1.指定分隔符,以某一列进行排序并输出
#-t 指定一个分隔符
#-k 后面跟数字,指定按第几列进行排序
#-r 反序排序(升序变成降序)
#按“:”做分隔符,以第3列,也就是用户UID,来从大到小排序
[root@localhost opt]# sort -t ":" -nk3 -r /etc/passwd
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
putong:x:8004:8004::/home/putong:/bin/bash
www:x:8003:8003::/home/www:/bin/bash
stick:x:8002:8002::/home/stick:/bin/bash
esnode:x:8001:8001::/home/esnode:/bin/bash
......
2.输出内容按字母规则进行排序
#默认按字母规则进行排序
[root@localhost opt]# cat /etc/group | sort
adm:x:4:
apache:x:48:
audio:x:63:
bin:x:1:
cdrom:x:11:
daemon:x:2:
......
3.输出内容按数字大小进行排序
[root@localhost opt]# cat num.txt
21
456
9789
234
24
11
1
31
32
1
3
31
#-n 数字从小到大排序
[root@localhost opt]# cat num.txt | sort -n
1
1
3
11
21
24
31
31
32
234
456
9789
#数字从大到小排序
[root@localhost opt]# sort -r num.txt
9789
456
32
31
31
3
24
234
21
11
1
1
4.输出内容按月份进行排序
[root@localhost opt]# cat month.txt
December
October
January
November
July
April
February
March
August
May
September
June
#-M 按月份进行排序
[root@localhost opt]# sort -M month.txt
January
February
March
April
May
June
July
August
September
October
November
December
5.指定目录下的文件按大小进行排序
#把etc目录下所有的文件,按从大到小排序
[root@localhost ~]# du -h /etc | sort -nr