Shell-Script

確保文本文件中的所有行沒有相同的值

  • August 6, 2015

我有一個包含多行的文本文件。有些行包含相同的值。我想要的是確保所有行都沒有重複或“三次”。

樣本:

2014-11-21
2013-10-19
2013-06-09
2014-11-21
2014-11-21
2015-02-19
2012-08-12
2015-07-22
2013-06-09

輸出:

2014-11-21
2013-10-19
2013-06-09
2015-02-19
2012-08-12
2015-07-22

我試過uniq了,但它完全刪除了所有重複的行。我想要的是保留一個。

使用sort(它還將對輸出進行排序):

sort -u file

使用awk(它不排序,只需過濾掉重複項,如所需的輸出):

awk '!a[$0]++' file

perl(相同的原則awk):

perl -ne 'print unless $a{$_}++' file

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