Linux常用命令
命令格式
-
命令格式:命令 [-选项] [参数]
-
例:ls -la /etc
-
说明:
-
个别命令使用不遵循此格式
-
当有多个选项时,可以写在一起,不分先后顺序
-
简化选项与完整选项,-a等于-all
-
-
1、文件处理命令
1.1目录查看命令ls
- 英文原意:list
- 功能描述:显示目录文件
- 语法:ls 选项[-ald] [文件或目录]
- -a 显示所有文件,包括隐藏文件
- -l (long)详细信息显示
- -d 查看目录属性,若使用ls -l /etc会显示出该目录下的所有文件的详细信息,而不会显示该目录本身的信息,ls -ld /etc则可以查看目录本身的信息,通常l与d一起使用。
- -h 改变文件大小显示方式
- -i 查看每个文件专属的id号
- 显示信息说明(如下图实例)
-
- r w - r - - r - - 读写执行权限
- 第一个杠加上后面9个(r、w、x、-),第一个代表文件类型(-代表二进制文件,d(direction)代表目录,l代表软链接文件)
- 后面9个三三一组,分别代表u所有者、g所属组、o(others)其他人的权限,组内每三个分别代表r 读、w写、x(execute)执行,如果对应位置是杠代表没有该权限。
-
数字1,代表该文件打开或处理的次数
-
所有者,只能有一个,通常为该文件创建者,但也可以转移所有者
-
所属组,只能有一个,多个成员组成的组,允许其查看
-
文件大小,单位为字节,也可以输入ls -lh,让其单位显示为K或M,并且往后多个命令都可以使用此参数
-
文件最后一次修改时间或创建时间
-
文件名
-
1.2目录处理命令
-
mkdir
- 英文原意:make directories
- 功能描述:创建新目录
- 语法:mkdir -p [目录名]
- -p 递归创建,mkdir无法在一个不存在的目录下创建一个新目录,使用-p可以递归创建最下级目录
- 可以同时创建多个目录,如mkdir /tmp/Japan/longze /tmp/Japan/cangjing
-
cd
- 英文原意:change directory
- 功能描述:切换目录
- 语法:cd [目录名]
- cd …回到上一级目录
-
pwd
- 英文原意:print working directory
- 功能描述:显示当前目录
- 语法:pwd
-
rmdir
- 英文原意:remove empty directories
- 功能描述:删除空目录
- 语法:rmdir [目录名]
-
cp
- 英文原意:copy
- 功能描述:复制文件或目录
- 语法:cp -rp [原文件或目录] [目标目录]
- 不加选项只能复制文件
- 原文件或目录可以写多个,只需最后一个是目标目录
- 将目标目录设置为一个不存在的目录,可复制的同时重命名
- -r 复制目录
- -p 保留文件属性(复制文件后文件的最后修改时间会发生改变,可使用-p保留)
-
mv
- 英文原意:move
- 功能描述:剪切文件、改名
- 语法:mv [原文件或目录] [目标目录]
-
rm
- 英文原意:remove
- 功能描述:删除文件
- 语法:rm -rf [文件或目录]
- -r 删除目录
- -f 强制执行(去掉询问选项)
1.3文件处理命令
-
torch
- 功能描述:创建空文件
- 语法:touch [文件名]
- touch “program files” 加双引号创建带空格的文件,若不添加则是创建了两个文件,但不推荐创建带空格的文件
-
cat
- 功能描述:显示文件内容
- 语法:cat [文件名]
- -n 显示行号
-
tac
- 功能描述:显示文件内容(反向列示)
- 语法:tac [文件名]
-
more
- 功能描述:分页显示文件内容
- 语法:more [文件名] (输入命令后按以下按键进行操作)
- 空格或f:翻页
- Enter:换行
- q或Q:退出
-
less
- 功能描述:分页显示文件内容(可向上翻页)
- 语法:less [文件名] (输入命令后按以下按键进行操作)
- PageUP:向上翻页
- 上键:向上换行
- q或Q:退出
- /关键词 全局搜索关键词,按n查找下一个
-
head
- 功能描述:显示文件前面几行
- 语法:head -n 20 [文件名]
- -n 指定行数,默认显示前10行
-
tail
- 功能描述:显示文件后面几行
- 语法:tail -n 20 [文件名]
- -n 指定行数,默认显示后10行
- -f 动态显示文件末尾内容,输入后不自动退出,若文件更改后会实时变化
1.4链接命令
-
ln
- 英文原意:link
- 功能描述:生成链接文件
- 语法:ln -s [源文件] [目标文件]
- -s 创建软链接
-
软链接特征:类似Windows的快捷方式
- lrwxrwxrwx l软链接,软链接权限都为rwxrwxrwx
- 文件大小-只是符号链接,所以很小
- /tmp/issue.soft → /etc/issue 箭头指向源文件
-
硬链接
- 拷贝cp -p + 同步更新 echo “www.lampbrother.net” >> /etc/issue
- 通过 i 节点识别
- 不能跨分区
- 不能针对目录使用
2、权限管理命令
2.1权限管理命令chmod
-
chmod
- 英文原意:change the permissions mode of a file
- 功能描述:改变文件或目录权限
- 语法:chmod [{ugoa}{±=}{rwx}] [文件或目录]
- u所有者 g所属组 o其他人 a所有人
- 用数字表示权限:r=4 w=2 x=1
- -R 递归修改
- 范例
- $ chmod u+x, o-r japan.list 所有者增加x权限,其他人减少r权限
- $ chmod 640 japan.list 修改文件japan.list权限为rw-r- - - - -
- $ chmod -R 777 testdir 修改目录testdir及其目录下文件为所有用户具有全部权限
-
rwx权限理解
- 对文件的rwx权限(可执行的命令)
- r:cat/more/head/tail/less
- w:vim
- x:script/command
- 对目录的rwx权限(可执行的命令)
- r:ls
- w:touch/mkdir/rmdir/rm
- x:cd
代表字符 权限 对文件的含义 对目录的含义 r 读权限 可以查看文件内容 可以列出目录中的内容 w 写权限 可以修改文件内容 可以在目录中创建、删除文件 x 执行权限 可以执行文件 可以进入目录 - 对文件的rwx权限(可执行的命令)
2.2其他权限管理命令
-
chown
- 英文原意:change file ownership
- 功能描述:改变文件或目录的所有者
- 语法:chown [用户] [文件或目录]
- 范例:$ chown mango helloword.py 改变文件helloword.py的所有者为mango
-
chgrp
- 英文原意:change file group ownership
- 功能描述:改变文件或目录的所属组
- 语法:chgrp [用户组] [文件或目录]
-
umask
- 英文原意:the user file-creation mask
- 功能描述:显示、设置文件的缺省权限
- 语法:umask [-S]
- -S 以rwx形式显示新建文件缺省权限,不加-S会出现0022,取其反码7755,755代表rwxr-xr-x,第一个7代表特殊权限
- $ umask 022 设置缺省权限
- 注:新建的文件没有可执行权限、
3、文件搜索命令
3.1文件搜索命令find
- find
- 功能描述:文件搜索
- 语法:find [搜索范围] [匹配条件]
- -name:按文件名搜索
- $ find /etc -name init:在目录/etc中查找文件init(名字必须完全一样)
- 模糊查询:*代表任意字符,?代表单个字符,如:*init*,init *,init???
- -iname 不区分大小写
- -size:按文件大小搜索
- $ find / -size +204800:在根目录下查找大于100MB的文件
- +n大于 -n小于 n等于
- 单位:数据块,1数据块=512字节=0.5K,100MB=102400K=204800数据块
- -user:按所有者搜索
- $ find /home -user mango:在根目录下查找所有者为mango的文件
- -group 根据所属组查找
- -cmin:按是否被修改过搜索
- $ find /etc -cmin -5:在/etc下查找5分钟内被修改过属性的文件和目录
- -cmin 文件属性change(ls -l可以看到的信息都是属性)
- -amin 访问时间 access
- -mmin 文件内容modify
- 多个条件混合
- $ find /etc -size +163840 -a -size -204800:在/etc下查找大于80MB小于100MB的文件
- -a 两个条件同时满足
- -o 两个条件满足任意一个即可
- 其他
- $ find /etc -name inittab -exec ls -l {} \:对-name搜索到的结果进行后续操作
- -exec/-ok命令{}\; 对搜索结果执行操作,-ok会对每个文件询问是否执行操作
- $ find /etc -type f:在/etc下查找文件
- f文件 d目录 l软链接文件
- -inum根据i节点
- $ find /etc -name inittab -exec ls -l {} \:对-name搜索到的结果进行后续操作
3.2其他搜索命令
-
locate
- 功能描述:在文件资料库中查找文件
- 语法:locate [文件名]
- 注:文件资料库会定期更新,新创建的文件不会马上加入到资料库中,可使用updatedb进行手动更新;一些文件夹如/tmp不在文件资料库的收录范围内,locate无法找到该目录下的文件;可使用locate -i inittab进行不区分大小写的查找;
-
which
- 功能描述:搜索命令所在目录及别名信息,别名如rm -i,自带询问功能
- 语法:which [命令名称]
-
whereis
- 功能描述:搜索命令所在目录及帮助文档路径
- 语法:whereis [命令名称]
-
grep
- 功能描述:在文件中搜寻字串匹配的行并输出
- 语法:grep -iv [指定字串] [文件]
- -i 不区分大小写
- -v 排除指定字串
- 范例
- $ grep mysql /root/install.log
- $ grep -v ^# /etc/initlab 排除以#开头的行,前面要加^
4、帮助命令
-
man
- 英文原意:manual
- 功能描述:获得帮助信息
- 语法:man [命令或配置文件]
- 范例
- $ man ls 查看ls命令的帮助信息,相当于使用more打开文档,翻页等操作也同more/less
- $ man services 查看配置文件services的帮助信息
- 注:如passwd这样的命令既是命令也是配置文件,使用whereis查找发现有.1.gz(命令帮助文档)和.5.gz(配置文件帮助文档),使用man默认查看命令的帮助。可使用man 5 passwd查看配置文件帮助文档
- 使用whatis查看命令的简短介绍,apropos查看配置文件简短介绍
- 使用[命令 --help]查看帮助信息
- 使用info查看,使用方法与man类似
-
help
- 功能描述:获得Shell内置命令的帮助信息
- 语法:help [命令名称]
5、用户管理命令
-
useradd
- 功能描述:添加新用户
- 语法:useradd [用户名]
-
passwd
- 功能描述:设置用户密码
- 语法:passwd [用户名]
- 注:每个用户只能改自己的密码,而root用户可以改所有人的密码
- 注:在普通用户状态下,不允许更新为简单密码。root状态可以
-
who
- 功能描述:查看登录用户信息
- 语法:who
- 输出:登录用户名,登录终端,登录时间,登录主机ip地址(若没有代表本地登录)
- tty本地终端,pts远程终端
-
w
- 功能描述:查看登录用户详细信息
- 语法:who
- 输出:除who中显示信息外,up代表已启动时间;n users代表本机用户数;load average代表过去1分钟、5分钟、15分钟之内平均负载情况(主要指CPU和内存负载);IDLE表示用户已空闲时间;PCPU表示当前用户登录后操作占用CPU时间(每个进程在一个CPU循环周期内会分配一定的CPU时间,如果一个进程在CPU循环周期执行多次就会占用多个CPU时间);JCPU代表累计占用的时间;WHAT表示当前执行了什么操作
6、压缩解压命令
-
gzip
- 英文原意:GNU zip
- 功能描述:压缩文件
- 语法:gzip [文件]
- 压缩后文件格式:.gz
- 注:只能压缩文件,不能压缩目录,压缩后不保留源文件
-
gunzip
- 英文原意:GNU unzip
- 功能描述:解压缩.gz的压缩文件
- 语法:gunzip [压缩文件]
- 或使用gzip -d [压缩文件] :-d代表解压缩
-
tar
- 功能描述:打包目录
- 压缩:tar 选项[-czvf] [压缩后文件名] [目录]
- -c 打包
- -z 通过gzip指令处理备份文件
- -v 显示详细信息
- -f 指定文件名
- 压缩后文件格式:.tar.gz
- 解压缩:tar 选项[-xzvf] [解压缩文件]
- -x 对 tar 包做解打包操作
-
zip
- 功能描述:压缩文件或目录
- 语法:zip 选项[-r] [压缩后文件名] [文件或目录]
- -r 压缩目录
- 注:linux和windows都支持zip文件,rar linux不支持,linux的格式win都支持
-
unzip
- 功能描述:解压.zip的压缩文件
- 语法:unzip [压缩文件]
- -r 压缩目录
- 注:linux和windows都支持zip文件,rar linux不支持,linux的格式win都支持
-
bzip2
- 功能描述:压缩文件
- 语法:bzip2 选项[-k] [文件]
- -k 产生压缩文件后保留原文件
- 压缩后文件格式:.bz2
- 也可使用$ tar -cjvf Japan.tar.bz2 Japan (-z换成-j)压缩成.bz2
- $ tar -xjvf Japan.tar.bz2 (-z换成-j)解压缩
7、网络命令
-
write
- 功能描述:给用户发信息,以Ctrl+D保存结束
- 语法:write [用户名]
-
wall
- 英文原意:write all
- 功能描述:发广播信息
- 语法:wall [message]
-
ping
- 功能描述:测试网络连通性
- 语法:ping 选项[-c] IP地址
- -c 指定发送次数
-
ifconfig
- 英文原意:interface configure
- 功能描述:查看和设置网卡信息
- 语法:ifconfig [网卡名称] [IP地址]
- 注:linux系统默认有两张网卡,eth0为真实网卡(实际测试本机为eno1),若有第二张为eth1以此类推,lo为回环网卡,用于本机测试
-
mail
- 功能描述:查看发送电子邮件
- 语法:mail [用户名]
-
last
- 功能描述:列出目前与过去登入系统的用户信息
- 语法:last
-
lastlog
- 功能描述:检查某特定用户上次登录的时间
- 语法:lastlog
- 范例:$ lastlog:列出所有用户
- $ lastlog -u 502:-u代表-uid,列出用户id为502的登录信息
-
traceroute
- 功能描述:显示数据包到主机间的路径
- 语法:traceroute [网络地址]
-
netstat
- 功能描述:显示网络相关信息
- 语法:netstat [选项]
- -t:TCP协议
- -u:UDP协议
- -l:监听
- -r:路由
- -n:显示IP地址和端口号
- 范例: $ netstat -tlun:查看本机监听的端口
- $ netstat -an:查看本机所有的网络连接
- $ netstat -rn:查看本机路由表
-
setup
- 执行权限:root
- 功能描述:配置网络
- 语法:setup
-
mount
- 功能描述:挂载Linux系统外的文件
- 语法:mount [-t 文件系统] 设备文件名 挂载点
- 范例:# mount -t iso9660 /dev/sr0 /mnt/cdrom
8、关机重启命令
-
shutdown
- 语法:shutdown [选项] 时间
- -c:取消前一个关机命令
- -h:关机
- -r:重启
- 时间:now(现在) 20:30(指定时间 )
- 注:更安全
- 其他关机命令:halt poweroff init 0
- 其他重启命令:reboot init 6
- 语法:shutdown [选项] 时间
-
系统运行级别
- 0:关机
- 1:单用户(类似windows安全模式,无图形界面)
- 2:不完全多用户,不含NFS服务
- 3:完全多用户
- 4:未分配
- 5:图形界面(标准)
- 6:重启
-
runlevel:查询系统运行级别
-
logout:退出登录命令
结尾:个人学习记录,如有错误请指正