Linux 基础知识
用户管理
添加用户
不指定组将创建和用户名一样的组
$ useradd username
创建用户指定组
$ useradd username -g root
修改密码
- 非root用户只能给自己修改密码
$ passwd
文件管理
文件
创建文件
$ touch filename
删除文件
$ rm -f filename
递归删除文件
- 使用格式
$ find directory -name expression -type f | xargs rm -f
- 递归删除当前目录下所有.DS_Store文件
$ find . -name ".DS_Store" -type f | xargs rm -f $ find . -name ".DS_Store" -type f -delete
- 使用格式
搜索文件
$ find directory -name expression
- 列出nano开头文件路径
$ find / -name nano*
- 列出nano开头文件路径
文件软链接
$ ln -s /usr/bin/python3.6 /usr/bin/python
列出文件信息
$ ls $ ll
目录
创建目录
$ mkdir directory
删除目录
$ rm -rf directory
递归删除目录
- 使用格式
$ find directory -name expression -type d | xargs rm -rf
- 递归删除当前目录下所有images目录
$ find ./ -name 'images' -type d | xargs rm -rf
- 使用格式
切换目录
切换到当前用户目录
$ cd $ cd ~
切换到之前的目录
$ cd -
文件内容
搜索内容
- 搜索一个文件
$ grep 'text' hello.txt
- 搜索多个文件
$ grep 'text' hello.txt hi.txt
- 搜索当前目录下所有文件
$ grep 'text' *
- 搜索当前目录(包含子目录)下所有文件
$ grep -r 'text' *
- 忽略字母大小写
$ grep -i 'text' hello.txt
- 显示当前目录下的目录
$ ll | grep '^d'
- 显示当前目录下的文件
$ ll | grep '^-'
- 显示当前目录下的所有目录及子目录
$ ll -R | grep '^d'
- 显示当前目录和子目录下的所有文件
$ ll -R | grep '^-'
- 搜索一个文件
输出到标准输出窗口
$ cat /etc/profile
分页显示
$ cat /etc/profile | more
用户和组
修改文件所属用户和组
修改文件所属用户
$ chown wjj test.txt
修改文件所属组
$ chown :wjj test.txt
修改文件所属用户和组
$ chown wjj:wjj test.txt
修改文件所属组
$ chgrp wjj test.txt
软件管理
软件包管理器
配置源
$ nano /etc/apt/sources.list
更新软件列表
$ apt-get update
搜索软件
$ apt-cache search vim
安装软件
$ apt-get install vim
删除软件
$ apt-get purge vim
更新软件
$ apt-get upgrade
软件包安装
下载
$ apt-get install -d nano
安装
$ dpkg -i nano_2.9.3-2_amd64.deb
查找安装的软件
$ dpkg -l | grep nano
删除
$ dpkg -r nano
显示安装的软件
$ dpkg -l
tar
打包
- 打包(不压缩)
$ tar -cvf filename.tar filename
- 创建压缩包
$ tar -zcvf filename.tar filename
- 打包(不压缩)
解包
- 解包(不压缩)
$ tar -xvf filename.tar
- 解压缩包
$ tar -zxvf filename.tar
- 解包(不压缩)
列出包的所有内容
$ tar -tf filename.tar
环境变量
- ~/.bashrc 配置完后,需要关闭当前控制台,以后打开的新控制台,配置就会起作用。
/etc/profile 修改完文件后,运行source /etc/profile方可生效。
显示环境变量
- 所有环境变量
$ env
- 指定环境变量
$ echo $HOSTNAME
- 所有环境变量
设置环境变量
$ export PYTHONPATH=$PYTHONPATH:`pwd`
移除环境变量
$ unset PYTHONPATH
程序
命令command
- 执行Shell程序
- 执行当前目录下的命令
$ ./command
- 执行PATH中路径下的命令
$ command
- 执行当前目录下的命令
- 后台执行
$ nohup command &
服务service
启动服务
$ service ssh start
查看服务状态
$ service ssh status
停止服务
$ service ssh stop
重启服务
$ service ssh restart
设置开机自启动
$ update-rc.d ssh enable
设置开机不自启动
$ update-rc.d ssh disable
网络
下载
wget
- 下载文件
$ wget http://www.163.com/index.html
- 下载文件指定保存文件名
$ wget http://www.163.com/index.html -O index.html
- 下载文件内容输出到标准窗口
$ wget http://www.163.com/index.html -O -
- 下载文件
curl
连接
$ ssh username@ip $ ssh username@ip -p 22
复制
- 拷贝远程文件到本地
$ scp lnsoft@172.16.33.32:/etc/vimrc ./
- 拷贝本地文件到远程
$ scp /etc/vimrc lnsoft@172.16.33.32:/etc/
- 拷贝远程文件到本地
断开
- closing the shell session, e.g. with
exit
followed by Enter, orCtrl-d
usually allows you to exit the ssh session normally. - in the case where you have a bad connection and the shell is unresponsive, hit the Enter key, then type
~.
and ssh should immediately close and return you to your command prompt.
- closing the shell session, e.g. with