8.10 shell特殊符号 & cut命令
特殊符号:
1. * 任意个任意字符通配符
2. ? 任意一个字符
3. # 注释字符
一条命令前面加注释字符的话,命令就不会执行
4. \ 脱义字符,有些字符是命令,所以需要脱义符来让这个字符变成普通字符,而非命令字符:
5. | 管道符,把前面命令的输出结果交给后面的命令执行
cut命令可以分割字符串,可以指定某个字符进行分割,例如我要分割passwd文件里的字符串,并以冒号为分割符,然后指定查看第一段字符串:
如果要查看两段需要加个逗号:
想要查看一个范围可以这么写:
使用 -c 选项可以查看第几个字符:
8.11 sort_wc_uniq命令
sort命令可以对字符串或数字排序,排序的方法是安照ASCII码排序的,例如排序passwd文件的内容:
(按照字母排序的)
例如排序一个含有特殊字符的文件:vi aaa.txt
加 -n 选项会照数字去排序,这时相对于数字来说字母和特殊符号相当于是零:
-r 则是倒序排序:
wc -l 命令是统计行数的:
加 -m 选项则是统计字符数,包括换行符:
加 -w 选项是安照单词统计,这个单词是以逗号或者空格分开的一个个词:
uniq 命令是去掉重复的字符:
uniq命令可以和sort命令搭配使用,先排序去重:
8.12 tee_tr_split命令
tee命令,后跟文件名,类似于重定向“>”,但是比重定向多了一个功能,在把文件写入后面所跟的文件中的同时,还显示在屏幕上。
tee -a 追加重定向。
tr命令是用来替换字符的,针对字符来操作的:
split切割命令,可以用来切割文件,因为有些文件太大了,不方便查看,所以需要使用split来切割成多个文件来方便查看,split可以针对大小切割也可以针对行数切割:
常用选项 : -b 依据大小来分割文档,单位为byte
也可以指定目标文件名。 如:split -b500 passwd 123
-l :依据行数来分割文档
8.13 shell特殊符号下
想要把多条命令写在一行里,就需要使用分号分割:
|| 是 或者 的意思,写在两条命令中间的话只要左边的命令执行成功,那么右边的命令就不会执行。如果左边的命令执行失败,那么右边的命令就会执行:
&& 是 并且 的意思,只有左边的命令执行成功的时候,右边才会执行,只要左边的命令没有执行成功,那么右边的命令一定不会被执行: