首页 > 系统服务 > 详细

[shell基础]——sort命令

时间:2016-07-21 21:43:51      阅读:302      评论:0      收藏:0      [点我收藏+]

sort命令
sort是按照ASCII码升序输出,且是从首字符依次向后比较的

常见选项
      -c 测试文件是否已经被排序

      -r  逆向排序
      -n 按照数字数值大小排序

      -t  指定分割符
      -k 指定域

      -u 去除结果中的重复行
      -m 合并两个已排序的文件
      -o 将输出写到指定的文件


(1) -u 排序后去除重复行

# cat 1.txt
1:datadir=/aaa/zzz:
2:basedir=:cc
4:datadir=/sdfsfsd:dd
3:basedir=/data:gg
snsdsnsdsnsd
snsdsnsdsnsd

# cat 1.txt | sort -u
1:datadir=/aaa/zzz:
2:basedir=:cc
3:basedir=/data:gg
4:datadir=/sdfsfsd:dd
snsdsnsdsnsd

 
(2) -n

# cat 2.txt
1
10
11
19
2
5

# cat 2.txt | sort    --->#sort是按照ASCII码升序输出,且是从首字符依次向后比较的
1
10
11
19
2
5

# cat 2.txt | sort -n  --->#为实现纯数值排序可用 -n 选项实现
1
2
5
10
11
19

 
(3) -r 逆序

# cat 2.txt | sort -n -r
19
11
10
5
2
1

 
(4) -t -k

# cat -n 3.txt
1 banana:30:5.5
2 apple:10:2.5
3 pear:90:2.3
4 orange:20:3.4

# cat 3.txt | sort
apple:10:2.5
banana:30:5.5
orange:20:3.4
pear:90:2.3

# cat 3.txt | sort -t ‘:‘ -k 3 -n  --->#以:为分隔符,根据第3个域的数值大小排序
pear:90:2.3
apple:10:2.5
orange:20:3.4
banana:30:5.5

# cat 3.txt | sort -t ‘:‘ -k 3 -n -r  --->#以:为分隔符,根据第3个域的数值大小逆向排序
banana:30:5.5
orange:20:3.4
apple:10:2.5
pear:90:2.3

 

[shell基础]——sort命令

原文:http://www.cnblogs.com/snsdzjlz320/p/5693122.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!