linux下面sort的使用

核心
sort的介绍和使用

sort 它将文件进行排序,并将排序的结果标准输出,sort命令既可以从特定的文件,也可以从
stdin中获取输入
语法
sort 选项 参数

-b 忽略每行前面开始处的空格符
-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符
-f 排序时,将小写字母视为大写字母
-i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符
-M 将前面3个字母依照月份的缩写进行排序
-n 按照数值的大小排序
-r 以相反的顺序来排序
-c 检查文件是否已经按照顺序排序
-m 将几个排序号的文件进行合并
-o<输出文件> 将排序后的结果存入指定的文件
-t<分隔字符> 指定排序是所有的分隔字符
+<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位

参数
文件:指定待排序的文件列表

实例
sort 将文件/文本的每一行作为一个单位,相互比较,比较的原则是从首字符向后,依次按ASCII码
值进行比较,最后将他们按升序输出

[root@SZB-L0032013 sort]# cat sort.txt 
aaa:11
ccc:33
bbb:22
eee:55
ddd:44
eee:55
[root@SZB-L0032013 sort]# sort sort.txt 
aaa:11
bbb:22
ccc:33
ddd:44
eee:55
eee:55

忽略相同行使用-u 或者uniq

[root@SZB-L0032013 sort]# cat sort.txt 
aaa:11
ccc:33
bbb:22
eee:55
ddd:44
eee:55
[root@SZB-L0032013 sort]# sort -u sort.txt 
aaa:11
bbb:22
ccc:33
ddd:44
eee:55
[root@SZB-L0032013 sort]# uniq sort.txt 
aaa:11
ccc:33
bbb:22
eee:55
ddd:44
eee:55
[root@SZB-L0032013 sort]# sort sort.txt |uniq
aaa:11
bbb:22
ccc:33
ddd:44
eee:55

sort的-n、-r、-k、-t选项的使用

[root@SZB-L0032013 sort]# cat sort.txt 
aaa:11
ccc:33
bbb:22
eee:55
ddd:44
eee:55
#按照第二列数字从小到大顺序排序
[root@SZB-L0032013 sort]# sort -nk 2 -t: sort.txt 
aaa:11
bbb:22
ccc:33
ddd:44
eee:55
eee:55
#按照第二列数字从大到小顺序排序
[root@SZB-L0032013 sort]# sort -nrk 2 -t: sort.txt 
eee:55
eee:55
ddd:44
ccc:33
bbb:22
aaa:11
#-n是按照数字大小排序 -r是以相反顺序 -k是指定需要排序的列 -t指定分隔符

-k选项
-k选项的语法格式
FStart.CStart Modifie,FEnd.CEnd Modifier
——-Start——–,——-End——–
FStart.CStart 选项 , FEnd.CEnd 选项

[root@SZB-L0032013 sort]# cat ksort.txt 
abcd:1234
acde:2222
aecd:3333
dace:4444
deac:5555
[root@SZB-L0032013 sort]# sort -k 1.2 -t: ksort.txt 
dace:4444
abcd:1234
acde:2222
deac:5555
aecd:3333

-k 1.2表示 第一列的第二个字符开始比较从小到大一直比较到这个列的最后一个字符

[root@SZB-L0032013 sort]# sort -k 1.2,1.2 -nk 2,2 -t: ksort.txt 
abcd:1234
acde:2222
aecd:3333
dace:4444
deac:5555

-k 1.2,1.2 表示按照第一列的第二个字符开始比较 截止到第一列第二个字符结束
-nk 2,2 在根据第二列按照数值升序排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值