很多時(shí)候Linux需要對(duì)文本相對(duì)比較規(guī)范的文本數(shù)據(jù)進(jìn)行排序自点,這時(shí)候可以使用Linux系統(tǒng)下的sort命令進(jìn)行處理吃靠。
語(yǔ)法格式:sort [-ntkr] filename
常用參數(shù):
-n 根據(jù)數(shù)字進(jìn)行排序
-t 指定的分隔符
-k 指定分隔符的第幾列
-r 降序排序
用法示例:
先創(chuàng)建一個(gè)sort.txt的文本文件菜拓,表示各科的成績(jī)讹躯,內(nèi)容如下:
a 98 80 100 95
d 88 99 95 82
b 89 83 80 100
c 60 98 79 90
cat sort.txt | sort #默認(rèn)會(huì)按照第一列進(jìn)行排序
輸出結(jié)果:
a 98 80 100 95
b 89 83 80 100
c 60 98 79 90
d 88 99 95 82
cat sort.txt | sort -n -k 2 #按照第二列進(jìn)行排序
輸出結(jié)果:
c 60 98 79 90
d 88 99 95 82
b 89 83 80 100
a 98 80 100 95
cat sort.txt | sort -n -t " " -k 3 -r
#按照第三列進(jìn)行酱床、指定分割符為空格腹殿、降序排序
d 88 99 95 82
c 60 98 79 90
b 89 83 80 100
a 98 80 100 95
注意:如果不加-n 參數(shù)旨枯,Linux默認(rèn)會(huì)按照排序列第一個(gè)字符進(jìn)行排序蹬昌,比如21和3如果不加-n參數(shù)的話,系統(tǒng)會(huì)按照21第一個(gè)字符2和3比較攀隔,如果升序的化21會(huì)在3的前面皂贩,所有如果是數(shù)字的排序,必須要加上-n參數(shù)昆汹,從而保證排序的正確性明刷。