第一章
命令的分类
① 内部命令:集成于 Shell 解释器程序内部的一些特殊指令,也称为内建(Built-in)指令。属于 Shell 的一部分。没有单独对应的系统文件。自动载入内存,可以直接使用。
② 外部命令:Linux系统中能够完成特定功能的脚本文件或二进制程序。属于 Shell 解释器程序之外的命令。每个外部命令对应了系统中的一个文件。必须知道其对应的文件位置,由 Shell 加载后才能执行。
注意:Linux系统将存放外部命令、程序的目录默认添加到 “搜索路径”中当使用位于这些目录中的外部命令时,用户不需要指定具体的位置。
命令行的格式
① 通用的命令行使用格式:命令字 [选项] [参数]
命令字:是整条命令中最关键的一部分。唯一确定一条命令。
选项:短格式选项:使用“-”符号引导
多个单字符选项可以组合在一起使用
长格式选项:使用“--”符号引导
参数:命令字的处理对象
可以是文件名、目录(路径)名或用户名等内容
个数可以是零到多个
注意:Linux命令环境中,对英文字符的处理是区分大小写的
编辑 Linux 命令行的辅助操作
Tab 键:自动补齐命令
反斜杠“\”:转义
Ctrl+L 快捷键:清空页面
Ctrl+U 快捷键:删除光标位置到行首的所有字符
Ctrl+K 快捷键:删除从光标位置到行尾的内容
Ctrl+C 快捷键:停止正在运行的命令
常用命令(1)
① pwd:显示用户当前所在的工作目录位置
② cd:将用户的工作目录更改到其他位置
cd 目标位置:切换到目标位置
cd ~(cd):若不指定目标位置,切换到当前用户的宿主目录
cd - :切换到上一次执行 cd 命令之前所在的目录
③ ls :显示目录中内容,包括子目录和文件相关属性信息。
常用选项:-l(显示文件目录的属性) 、 -a(显示子目录和文件,和隐藏目录文件) 、 -A (跟-a差不多但不显示两个隐藏目录)、 -d (显示属性)、 -h (显示大小需要与-l结合使用)、 -R(显示目录和子目录的所有内容) 、 --color()
结合通配符:“?”:匹配文件名中的一个未知字符
“*”:匹配文件名中的任意多个字符
示例:ls -lh /root/1*.txt 查看root目录下以1开头和.txt结尾的文件信息
④ alias 命令别名 = 命令 :通过别名机制简化常用的、比较长的命令
⑤ du :统计指定目录(或文件)所占用磁盘空间的大小。
常用选项:-a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录
-h:显示出目录或文件的大小(K、M),默认的大小单位为字节(KB)
-s:只统计每个参数所占用空间总的大小,而不是统计每个子目录、文件的大小
⑥ mkdir :创建新的空目录(选项-p:一次性创建嵌套的多层目录)
⑦ touch :更新文件的时间标记(经常用于创建多个新的空文件)
touch {1..100}.txt 创建1到100以.txt结尾的文件
⑧ ln [-s] 源文件或目录… 链接文件或目标位置:创建软链接
⑨ ln 源文件或目录… 链接文件或目标位置:创建硬连接
⑩ cp [选项] 源文件或目录 目标文件或目录:将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录
常用选项:-f :覆盖目标同名文件或目录时不进行提醒,直接强制复制
-i :覆盖目标同名文件或目录时提醒用户确认
-p :复制时保持源文件的权限、属主及时间标记等属性不变
-r :复制目录时必须使用此选项,表示递归复制所有文件及子目录
注意:复制多个文件或目录时,目标位置必须是目录,且目标目录必须已存在
⑪ rm:删除指定的文件或目录
常用选项:-f(删除不提示)、-i(删除前提示)、-r(删除目录)
注意:不要直接删除系统中已有的目录或配置文件,以避免出现意外故障
⑫ mv [选项] 源文件或目录 目标文件或目录:将指定的文件或目录转移位置。如果目标位置与源位置相同,则相当于执行重命名操作
常用命令(2)
搜索范围由环境变量 PATH 决定(echo $PATH)
① which+可执行的文件:查看可执行的文件单条绝对路径
② which -a+可执行的文件:查看可执行的文件多条绝对路径
③ find +查找范围(查找文件或子目录的目录位置)+查找条件表达式(查找条件类型):采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找
常用查找条件类型:按名称查找 -name 根据目标文件的名称进行查找,允许使用“*”及“?”通配符
按文件大小查找 -size 根据目标文件的大小进行查找一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件常用的容量单位包括 kB(注意 k 是小写)、MB、GB
按文件属主查找 -user 根据文件是否属于目标用户进行查找
按文件类型查找 -type 根据文件的类型进行查找文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等,块设备是指成块读取数据的设备(如硬盘、内存等),字符设备是指按单个字符读取数据的设备(如键盘、鼠标等)
使用 find 命令实现多个查找条件:“-a”表示 而且(and) 实例:find /boot -size +1024k -a -name "vmlinuz*"
“-o”表示 或者(or) 实例:find /boot -size +1024k -o -name "vmlinuz*"
④ cat:显示出文件的内容
⑤ more:全屏方式分页显示文件内容
交互操作方法:按Enter键向下逐行滚动
按空格键向下翻一屏
按q键退出
⑥ less:与 more 命令相同,但扩展功能更多
交互操作方法:Page Up 向上翻页,Page Down 向下翻页
按“/”键查找内容,“n”下一个内容,“N”上一个内容
其他功能与 more 命令基本类似
⑦ head -n:查看文件开头的一部分内容(默认为10行)
⑧ tail -n:查看文件结尾的少部分内容(默认为10行)
-f:查看持续更新的文件(如日志)
⑨ wc:统计文件中的单词数量(Word Count)等信息
常用命令选项:-l:统计行数
-w:统计单词个数
-c:统计字节数
⑩ grep [选项].. 查找条件 目标文件(‘^a’表示以a开头,‘a$’表示以a结尾,‘^$’表示空行)
-i:查找内容时忽略大小写
-v:反转查找,即输出与查找条件不相符的行