uniq是去重,不相鄰的行不算重覆值。 uniq [OPTION]... [INPUT [OUTPUT]] 選項說明: -c:統計出現的次數(count)。 -d:只顯示被計算為重覆的行。 -D:顯示所有被計算為重覆的行。 -u:顯示唯一值,即沒有重覆值的行。 -i:忽略大小寫。 -z:在末尾使用\ ...
uniq是去重,不相鄰的行不算重覆值。
uniq [OPTION]... [INPUT [OUTPUT]]
選項說明:
-c:統計出現的次數(count)。
-d:只顯示被計算為重覆的行。
-D:顯示所有被計算為重覆的行。
-u:顯示唯一值,即沒有重覆值的行。
-i:忽略大小寫。
-z:在末尾使用\0,而不是換行符。
-f:跳過多少個欄位(field)開始比較重覆值。
-s:跳過多少個字元開始比較重覆值。
-w:比較重覆值時每行比較的最大長度。即對每行多長的字元進行比較。
示例:
[root@xuexi tmp]# cat uniq.txt 111 223 56 111 111 567 223
下麵的命令刪除了相鄰的重覆行,但是第一行111沒有刪除。
[root@xuexi tmp]# uniq uniq.txt 111 223 56 111 # 刪除了重覆的111 567 223
排序後去重。
[root@xuexi tmp]# sort uniq.txt | uniq 111 223 56 567
使用-d顯示重覆的行。
[root@xuexi tmp]# sort uniq.txt | uniq -d 111 223
使用-D顯示所有重覆過的行。
[root@xuexi tmp]# sort uniq.txt | uniq -D 111 111 111 223 223
使用-u顯示唯一行。
[root@xuexi tmp]# sort uniq.txt | uniq -u 56 567
使用-c統計哪些記錄出現的次數。
[root@xuexi tmp]# sort uniq.txt | uniq -c 3 111 2 223 1 56 1 567
使用-d -c統計重覆行出現的次數。
[root@xuexi tmp]# sort uniq.txt | uniq -d -c 3 111 2 223
-c不能和-D一起使用。結果說顯示所有重覆行再統計重覆次數是毫無意義的行為。
[root@xuexi tmp]# sort uniq.txt | uniq -D -c uniq: printing all duplicated lines and repeat counts is meaningless Try `uniq --help' for more information.
回到系列文章大綱:http://www.cnblogs.com/f-ck-need-u/p/7048359.html