sort:帮我们依据不同的数据类型进行排序 (可针对文本文件的内容,以行为单位来排序。)
语法及格式
sort [-bcfMnrtk][源文件][-o 输出文件]
常见参数
-b 忽略每行前面开始出的空格字符。
-c 检查文件是否已经按照顺序排序。
-f 排序时,忽略大小写字母。
-M 将前面3个字母依照月份的缩写进行排序。
-n 依照数值的大小排序。
-o 将排序后的结果存入指定的文件。
-r 以相反的顺序来排序。
-t 指定排序时所用的栏位分隔字符。
-k 选择以哪个区间进行排序。
命令举例
登陆历史ip排序统计,结合uniq进行重复过滤
root@http://m.fffmo.com~# last|awk '{print $3}' | sort -nr |uniq -c|sort -nr
40 221.12.29.142
23 218.75.123.226
22 115.199.183.247
15 boot
14 115.200.239.233
11 183.129.213.91
对目录的大小排序
root@http://m.fffmo.com~# du -sh * |sort -h
0 history
4.0K dockert
4.0K domain_enable.top
8.0K block.pl
648M fffmo.log
1.8G bak
对文件第三列进行排序,如果不加n,按照 ASCII字符排序,加n按照数值排序。
root@http://m.fffmo.com~# sort -t $'\t' -k 3n fffmo.log
g winxp 500 300 3G
c Debian 600 200 8K
b linux 1000 200 5K
e bsd 1000 600 4M
a mac 2000 500 2K
c win7 2000 100 7G
d winxp 4000 300 3G
f SUSE 4000 300 6M