Command-Line

sort -u 和 uniq -u 的區別

  • May 30, 2022

直到現在,我一直在使用sort -u擺脫重複項。

但我對軟體工俱生成的列表有真正的疑問。

問題是:輸出是否sort -u |wc與 相同uniq -u |wc

因為它們不會產生相同的結果。手冊uniq規定:

-u, –unique 只列印唯一的行

我的輸出由 1110 個單片語成,其中sort -u保留了 1020 行和uniq -u 1110正確的數量。問題是我無法直覺地發現通過>在命令行末尾使用生成的列表中的任何重複項,並且總破解密碼存在問題(在自定義開膛手 john 的上下文中)。

不,它們不一樣。一方面,sort首先對列表進行排序;其次,uniq -u僅列印在每次給定執行中“唯一”的那些行,即在它們之前或之後沒有相同輸入行的那些行。

$ printf "%s\n"  3 3 2 1 2 | sort -u
1
2
3
$ printf "%s\n"  3 3 2 1 2 | uniq -u
2
1
2

也可以看看:

引用自:https://unix.stackexchange.com/questions/704420