shell编程学习之sort命令

sort
sort用于排序
1、先看下sort的各个参数
-b 忽略每行前面开始出的空格字符。
-c 检查文件是否已经按照顺序排序。
-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
-f 排序时,将小写字母视为大写字母。
-i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
-m 将几个排序好的文件进行合并。
-M 将前面3个字母依照月份的缩写进行排序。
-n 依照数值的大小排序。
-o<输出文件> 将排序后的结果存入指定的文件。
-r 以相反的顺序来排序。
-t<分隔字符> 指定排序时所用的栏位分隔字符。
+<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
2、按数字排序
-bash-3.2# sort -n |head -n 5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
3、按相反的顺序来排序
-bash-3.2# cat 1.txt
1
2
3
4
5
6
-bash-3.2# sort -r 1.txt
6
5
4
3
2
1
4、排序后的结果输入
-bash-3.2# cat 1.txt
1
2
3
4
5
6
-bash-3.2# sort -r 1.txt -o 1.txt
-bash-3.2# cat 1.txt
6
5
4
3
2
1
5、按列来排序
-bash-3.2# cat 1.txt
1 a
2 b
3 c
4 d
-bash-3.2# sort -k 2 -r 1.txt
4 d
3 c
2 b
1 a
6、去除相同的行
-bash-3.2# cat 1.txt
1 a
2 b
3 c
4 d
4 d
-bash-3.2# sort -u 1.txt
1 a
2 b
3 c
4 d
7、间隔符
-bash-3.2# cat 1.txt
1:a:tail
2:b:one
3:c:less
4:d:more
4:d:cat
-bash-3.2# sort -t: -k 2 1.txt
1:a:tail
2:b:one
3:c:less
4:d:cat
4:d:more
本文出自 “游造技术博客” 博客

您可以选择一种方式赞助本站

支付宝转账赞助

支付宝扫一扫赞助

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

图片 表情