Sort命令 来自:红黑联盟
====================================================
sort的精髓在于k,会另外整理一篇东西讨论-k
====================================================
-b 忽略每行前面开始出的空格字符。
-c 检查文件是否已经按照顺序排序。
-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
-f 排序时,将小写字母视为大写字母。
-i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
-k 指定列数
-m 将几个排序好的文件进行合并。
-M 将前面3个字母依照月份的缩写进行排序。
-n 依照数值的大小排序。Sort默认按每个字节的值大小来排序的
-o<输出文件> 将排序后的结果存入指定的文件。
-r 以相反的顺序来排序。
-t<分隔字符> 指定排序时所用的栏位分隔字符。
-u (unique)去除相同的项
+<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
--help 显示帮助。
--version 显示版本信息
先准备一下材料
[root@Jesse ~]# cat c.txt
7 July
8 August
9 September
10 October
11 November
12 December
1 January
2 February
3 March
4 April
5 May
6 June
[root@Jesse ~]# sort -c c.txt
sort: c.txt:4: disorder: 10 October //说明未按照某种顺序进行排列,如果什么也不显示,则说明已按某种顺序分类。
[root@Jesse ~]# cat a.txt
google 110 5000
baidue 100 5010
gugeee 120 3000
sohuee 100 4500
[root@Jesse ~]# cat b.txt
3 ladygaga 1
5 ladygaga 9
0 ladygaga 5
9 ladygaga 4
6 ladygaga 2
8 ladygaga 3
7 ladygaga 0
1 ladygaga 6
4 ladygaga 7
2 ladygaga 8
[root@Jesse ~]# sort -m a.txt c.txt //将两个文件内容整合到一起
7 July
8 August
9 September
10 October
11 November
12 December
1 January
2 February
3 March
4 April
5 May
6 June
google 110 5000
baidue 100 5010
gugeee 120 3000
sohuee 100 4500
月份[root@Jesse ~]# cat c.txt July August September October November December January February March April May June
[root@Jesse ~]# sort -M c.txt
January
February
March
April
May
June
July
August
September
October
November
December
[root@Jesse ~]# sort -M c.txt -o d.txt //将内容排序后导入到d.txt这个文件。
[root@Jesse ~]# cat e.txt
1
2
3
4
5
6
7
8
[root@Jesse ~]# sort -r e.txt //逆序进行排列
8
7
6
5
4
3
2
1
[root@Jesse ~]# cat a.txt
google 110 5000
baidue 100 5010
gugeee 120 3000
sohuee 100 4500
[root@Jesse ~]# sort -t" " -k 3 a.txt //出现空格的地方作为第一域进行分类
gugeee 120 3000
sohuee 100 4500
google 110 5000
baidue 100 5010