linux sort命令用法实例教程
linux下sort命令:
参数:
-t 指定分隔符,默认tab或空格
-k 以哪列进行排序,上面-t分割后,1行可能有多列 可以指定多列排序 语法:开始列[.第几个字符,结束列.第几个字符] 括号内可以省略不指定 -r 降序,默认升序 -u 去除重复行 -n 以数字进行排序,默认以字符 -f 忽略大小写
例1,建立第一个测试文件
复制代码代码示例:
# cat > one.txt
4 6 22 7 3 18
例2,排序
复制代码代码示例:
# sort one.txt
18 22 3 4 6 7 3比22大,因为默认以字符进行排序,一个一个位置进行比较
例3,以数字进行排序
复制代码代码示例:
# sort -n one.txt
3 4 6 7 18 22
例4,以数字进行倒序排列
复制代码代码示例:
# sort -nr one.txt
22 18 7 6 4 3
例5,第二个测试文本
复制代码代码示例:
# cat > two.txt
# sort two.txt
例6,以空格分隔每行,第三列进行数字排序
复制代码代码示例:
# sort -t ' ' -k 3,3n two.txt
chongqing 渝 12656 12.3 tianjin 津 14370 12.5 beijing 京 19500 7.7 shanghai 沪 21602 7.7
例7,以空格进行分隔每行,第三列的第2至第3个字符进行按数字排序
复制代码代码示例:
# sort -t ' ' -k 3.2,3.3n two.txt
shanghai 沪 21602 7.7 chongqing 渝 12656 12.3 tianjin 津 14370 12.5 beijing 京 19500 7.7
例8,以空格进行分隔每行,第一列的第2至第3个字符进行排序
复制代码代码示例:
sort -t ' ' -k 1.2,1.3 two.txt
beijing 京 19500 7.7 shanghai 沪 21602 7.7 chongqing 渝 12656 12.3 tianjin 津 14370 12.5
例9,以空格进行分隔每行,第一列的第2至第2(即只有第2个)个字符进行排序
复制代码代码示例:
# sort -t ' ' -k 1.2,1.2 two.txt
beijing 京 19500 7.7 chongqing 渝 12656 12.3 shanghai 沪 21602 7.7 tianjin 津 14370 12.5
例10,在上面的基础上添加-u 去除重复
复制代码代码示例:
# sort -t ' ' -k 1.2,1.2 -u two.txt
beijing 京 19500 7.7 shanghai 沪 21602 7.7 tianjin 津 14370 12.5
例11,以空格进行分隔每行,第一列的第2至第2(即只有第2个)个字符进行排序。
复制代码代码示例:
# sort -t ' ' -k 1.2,1.2 -k 3,3n two.txt
beijing 京 19500 7.7 chongqing 渝 12656 12.3 shanghai 沪 21602 7.7 tianjin 津 14370 12.5 以上通过实例介绍了linux sort命令的用法,希望对大家有所帮助。 |