一、排序sort
sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出。
选项参数:
-f :忽略大小写的差异,例如 A 与 a 视为编码相同;
-b :忽略最前面的空格符部分;
-M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法;
-n :使用『纯数字』进行排序(默认是以文字型态来排序的);
-r :反向排序;
-u :就是 uniq ,输出行中去除重复行。;
-t :分隔符,默认是用 [tab] 键来分隔;
-k :以那个区间 (field) 来进行排序的意思
例子:
#去重反向
shell$ cat sort.sh | sort -r -u
VF
vdv
bcdbv vd
可参考:https://blog.csdn.net/xifeijian/article/details/9209623
二、文字去重
uniq 命令:uniq 命令删除文件中的重复行
语法
uniq [ -c | -d | -u ] [ -f Fields ] [ -s Characters ] [ -Fields ] [ +Characters ] [ InFile [ OutFile ] ]
uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用。也就是说,为了使uniq起作用,所有的重复行必须是相邻的。
参数:
-i :忽略大小写字符的不同;
-c :进行计数
-u :只显示唯一的行
-d :只显示重复的行
案例:
uniq sort.sh
bcdbv vd
vdv
VF
shell$ cat sort.sh
bcdbv vd
vdv
VF
VF
三、wc统计文件行数、单词数或字节数
格式:wc -l
打印指定文件的文本行数。(l=小写L)
下面參数可组合使用。
參数:-c, --bytes
打印字节数(print the byte counts)
參数:-m, --chars
打印字符数(print the character counts)
參数:-l, --lines
打印行数(print the newline counts)
參数:-L, --max-line-length
打印最长行的长度(print the length of the longest line)
參数:-w, --words
打印单词数(print the word counts)
案例:
# wc sort.sh
5 5 20 sort.sh
行数 单词数 字节数 文件名称
只打印行数
shell$ cat sort.sh | wc -l
4
四、打印格式化输出
pr [option]…[file]…
-column 指定输出的栏数,默认值为1
-h 指定页眉,如果没有指定,则默认使用文件名作为页眉
-l 指定每页行数,默认为66行
-o 指定每行的缩进字符数量
-w 指定页面宽度,默认为72个字符
-t 不想显示标题
案例:
#5列,不显示标题
shell$ pr -c5 -t sort.sh
bcdbvdvVFVF
注:文本处理函数还有很多,不一一列举了,遇到多查阅资料就可以了。
---------------------
领取专属 10元无门槛券
私享最新 技术干货