用法:sort [选项]... [文件]...
串联排序所有指定文件并将结果写到标准输出。
排序选项:
-b, --ignore-leading-blanks 忽略前导的空白区域
-d, --dictionary-order 只考虑空白区域和字母字符
-f, --ignore-case 忽略字母大小写
-g, --general-numeric-sort 按照常规数值排序
-i, --ignore-nonprinting 只排序可打印字符
-n, --numeric-sort 根据字符串数值比较
-r, --reverse 逆序输出排序结果
其他选项:
-c, --check, --check=diagnose-first 检查输入是否已排序,若已有序则不进行操作
-k, --key=位置1[,位置2] 在位置1 开始一个key,在位置2 终止(默认为行尾)
-m, --merge 合并已排序的文件,不再进行排序
-o, --output=文件 将结果写入到文件而非标准输出
-t, --field-separator=分隔符 使用指定的分隔符代替非空格到空格的转换
-u, --unique 配合-c,严格校验排序;不配合-c,则只输出一次排序结果
例1. -u 去重
h09adm@rqal***:/usr/sap/H09/HDB09/exe/testscripts/dpadapter/teradata> cat test.txt
1 134.102.173.43
2 134.102.173.43
3 134.102.171.42
4 134.102.170.9
h09adm@rqal***:/usr/sap/H09/HDB09/exe/testscripts/dpadapter/teradata> cat test.txt | sort -u
1 134.102.173.43
2 134.102.173.43
3 134.102.171.42
4 134.102.170.9
例2. 找出文本中出现次数最多的IP地址,并显示出现次数
h09adm@rqal***:/usr/sap/H09/HDB09/exe/testscripts/dpadapter/teradata> cat test.txt
1 134.102.173.43
2 134.102.173.43
3 134.102.171.42
4 134.102.170.9
h09adm@rqal***:/usr/sap/H09/HDB09/exe/testscripts/dpadapter/teradata> cat test.txt | grep -v "^$" | awk '{print $2}' | sort | uniq -c | sort -r -n | head -n 1
2 134.102.173.43
网友评论