sort
sort命令是在Linux里非常有用焕盟,它將文件進(jìn)行排序秋秤,并將排序結(jié)果標(biāo)準(zhǔn)輸出。sort命令既可以從特定的文件航缀,也可以從stdin中獲取輸入商架。
選項(xiàng)
-b:忽略每行前面開(kāi)始出的空格字符;
-i:排序時(shí)芥玉,除了040至176之間的ASCII字符外蛇摸,忽略其他的字符;
-m:將幾個(gè)排序號(hào)的文件進(jìn)行合并灿巧;
-M:將前面3個(gè)字母依照月份的縮寫(xiě)進(jìn)行排序赶袄;
-n:依照數(shù)值的大小排序;
-o<輸出文件>:將排序后的結(jié)果存入制定的文件抠藕;
-r:以相反的順序來(lái)排序饿肺;
-t<分隔字符>:指定排序時(shí)所用的欄位分隔字符;
-k:排序從POS1位置開(kāi)始盾似;如果指定了POS2的話(huà)敬辣,到POS2位置結(jié)
束
-c:檢查文件是否已經(jīng)按照順序排序;
-d:排序時(shí)零院,處理英文字母溉跃、數(shù)字及空格字符外,忽略其他的字符告抄;
-f:排序時(shí)撰茎,將小寫(xiě)字母視為大寫(xiě)字母;
+<起始欄位>-<結(jié)束欄位>:以指定的欄位來(lái)排序打洼,范圍由起始欄位到結(jié)束欄位的前一欄位龄糊。
實(shí)例
sort -u sort.txt
- sort的-n、-r募疮、-k炫惩、-t選項(xiàng)的使用:
root@localhost ~/tmp# cat 1.txt
AAA:BB:CC
bbb:10:2.5
ccc:50:3.3
eee:60:5.1
eee:40:5.4
aaa:30:1.6
ccc:50:3.3
-n是按照數(shù)字大小排序,-r是以相反順序酝锅,-k是指定需要愛(ài)排序的欄位诡必,-t指定欄位分隔符為冒號(hào)
root@localhost ~/tmp# sort -nk 2 -t: 1.txt
AAA:BB:CC
bbb:10:2.5
aaa:30:1.6
eee:40:5.4
ccc:50:3.3
ccc:50:3.3
eee:60:5.1
使用du查看文件大小,并采用sort按數(shù)字大小進(jìn)行排序
root@localhost ~# du -sh * | sort -nr
104K study
44K log.180920
4.0K tmp
4.0K anaconda-ks.cfg