10.1.1 记录历史命令
我们执行的命令Linux都会记录,预设可以记录1000条历史命令。这些命令保存在用户的家目录的.base_history文件中。但需要注意的是,只有当用户正常退出当前shell时,在当前shell中执行的命令才会保存至.base_history文件中。
!是与命令历史有关的一个特殊字符,该字符常用的应用有以下3个:
!!:连续两个!表示执行上一条指令。
!n:这里的n是数字,表示执行命令历史中第n条指令。
!字符串(字符串大于等于1):例如!pw表示执行命令历史中最近一次以pw开头的命令。
10.1.2命令和文件名补全
按tab键可以帮我们补全一个指令、一个路径或者一个文件名。连续按两次tab键,系统则会把所有的命令或者文件名列出来。
10.1.3 别名
我们可以通过alias把一个常用的很长的指令另取一个简单易记的指令。如果不想用了还可以使用unalias命令解除别名功能。
另外,也可以自定义命令的别名,格式为alias[命令别名]=[‘具体的命令’],示例如下:
10.1.4 通配符
在base下,可以使用*来匹配零个或多个字符,用?匹配一个字符。
10.1.5 输入/输出重定向输入重定向用于改变命令的输入,输出重定向用于改变命令的输出。输出重定向更为常用,它经常用于将命令的结果输入到文件中,而不是屏幕上。输入重定向的命令是<,输出重定向的命令是>。另外,还要错误重定向命令2>以及追加重定向命令>>,示例如下:
10.1.6 管道符
它用于将前一个指令的输出作为后一个指令的输入
10.1.7 作业控制
当运行进程时,你可以使它暂停(按Ctrl+Z),然后使用fg命令恢复它。或者利用bg命令使它到后台运行。此外,也可以使它终止(按Ctrl+C)
10.2.1 命令env
使用env命令,可列出系统预设的全部系统变量。
10.2.2 命令set
set命令和env命令类似,也可以输出环境变量。
10.4.6 命令cut
cut命令用来截取某一个字段,格式为:cut -d ‘分隔字符’ [-cf]n,这里的n是数字。有三个参数:
-d:后面跟分隔字符,分隔字符要用单引号括起来
-c:后面接的是第几个字符
-f:后面接的是第几个区块
10.4.7 命令sort
sort命令用做排序,格式为:sort [-t 分隔符] [-kn1,n2] [-nru]。还有几个参数:
-t:后面跟分隔字符,作用跟cut的-d选项一样
-n:表示使用纯数字排序
-r:表示反向排序
-u:表示去重复
-kn1,kn2:表示由n1区间排序到n2区间,可以只写-kn1,即对n1字段排序
10.4.8 命令wc
用于统计文档的行数、字数或词数
-l:统计行数
-m:统计字符
-w:统计词数
10.4.9 命令uniq
用于删除重复的行,-c参数表示统计重复的行。使用uniq前必须先用sort命令给文件排序
10.4.10 命令tee
后面跟文件名,其作用类似于重定向>,但它比重定向多一个功能,把文件写入后面的所跟文件时,还显示在屏幕上。
10.4.11 命令tr
用于替换字符,-d:表示删除某一个字符,后面跟要删除的字符。-s:表示删除重复的字符
10.4.14 特殊符号;
用于想要运行多个任务时,可以在命令之间加“;”
shell基础知识
最新推荐文章于 2021-04-29 17:12:37 发布