cat
显示行号
cat -n
只对非空行显示行号
cat -b
对连续的空行只输出一个空行
cat -s
grep
添加颜色
grep --color
打印匹配行后面的N行
grep -A N
打印匹配行前面的N行
grep -B N
打印匹配行前后的N行
grep -C N
打印含有匹配行的文件的文件名
grep -l "query" ./*
打印没有匹配行的文件的文件名
grep -L "query" ./*
把pattern当作一个固定的字符串, 不进行正则解析,可以加快速度。
grep -F
只对指定的文件进行搜索
grep -nr --include=*.sh "AA" ./FILE1/
sort
1. 对文件按照修改时间排序
ll LinkunitServer/|sort -k8,8排序前
-rw-r--r-- 1 user1 user1 8493 Mar 21 10:30 Data.cpp -rw-r--r-- 1 user1 user1 26969 Mar 21 10:31 Logic.cpp -rw-r--r-- 1 user1 user1 105092 Mar 21 10:32 LogicWorker.cpp -rw-r--r-- 1 user1 user1 15107 Mar 21 10:32 LogicWorker.h -rw-r--r-- 1 user1 user1 907 Mar 21 10:30 Poll.cpp -rw-r--r-- 1 user1 user1 900 Mar 21 10:30 Type.h -rw-r--r-- 1 user1 user1 93 Mar 21 10:30 Version.h排序后
-rw-r--r-- 1 user1 user1 8493 Mar 21 10:30 Data.cpp -rw-r--r-- 1 user1 user1 900 Mar 21 10:30 Type.h -rw-r--r-- 1 user1 user1 907 Mar 21 10:30 Poll.cpp -rw-r--r-- 1 user1 user1 93 Mar 21 10:30 Version.h -rw-r--r-- 1 user1 user1 26969 Mar 21 10:31 Logic.cpp -rw-r--r-- 1 user1 user1 105092 Mar 21 10:32 LogicWorker.cpp -rw-r--r-- 1 user1 user1 15107 Mar 21 10:32 LogicWorker.h
sort -t ‘ ‘ -k 1.2,1.2 -k 3,3nr salary.txt排序前
google 110 5000 baidu 100 5000 yahoo 50 3000 soso 100 4500 etao 500 3500排序后
baidu 100 5000 yahoo 50 3000 etao 500 3500 google 110 5000 soso 100 4500由于只对第二个字母进行排序,所以我们使用了-k 1.2,1.2的表示方式,表示我们“只”对第二个字母进行排序。若使用-k 1.2,就意味着将对从第二个字母起到本域最后一个字符为止的字符串进行排序。同理,对员工工资进行排 序,使用了-k 3,3,表示“只”对本域进行排序。
3. 其它常用选项
对整数排序
-n, –numeric-sort
对于浮点数,负数,排序,当然也可以对整数排序,不过性能比如-n高
-g, –general-numeric-sort
按文件大小进行排序 可以排序2K, 1G等带单位的数字,适合排序某文件夹下所有文件和文件的大小,如
-h, –human-numeric-sort
du -sh * | sort -h
按月份进行排序
-M, –month-sort
按字典序排序, 忽略字母、数字、空白字符外的所有字符
-d, –dictionary-order