uniq:查找重複文本的 Linux 命令

有時,您可能有很長的文本文件,其中很難找到某些模式或 重複的行或單詞,或者您可能希望更輕鬆地匹配一堆小文本文件,甚至使用管道並匹配命令的輸出。 同樣, uniq 是命令 你在找什麼。

使用 uniq 你可以 尋找冗餘信息 以一種非常簡單的方式。 此外,如果需要,它還允許您刪除這些重複項。 而且,在本教程中,您將看到一些您可能會覺得有用的命令示例。 請記住,它默認安裝在絕大多數發行版中,因此您不必安裝該軟件包...

好吧,首先,讓我們看一個例子來了解 uniq 命令的基礎知識以及它做什麼和不做什麼。 為了 例子,假設您創建了一個名為 test.txt, 然後在裡面放幾個重複的短語或單詞,比如重複三行 «你好這是一個測試» 然後使用 uniq :

nano prueba.txt

uniq prueba.txt

那麼,在那種情況下, 命令的輸出 將是簡單的:

Salida:

Hola, esto es una prueba

也就是說,放一行«你好這是一個測試» 消除其他兩個相同的。 但請注意,如果您再次使用 cat 查看原始文件,您會看到它們並沒有從文件中刪除,它只是從輸出中刪除了它們:

cat prueba.txt

其輸出將是:

Hola, esto es una prueba

Hola, esto es una prueba

Hola, esto es una prueba

但是 uniq 命令有更多可用的選項。 例如,它可以告訴你 一行重複的次數,在行首指示重複次數。 為了它:

uniq -c prueba.txt

你也可以 打印重複的行,並忽略不重複的:

uniq -d prueba.txt

或者不使用 -u 選項複製的那些:

uniq -u prueba.txt

使用 區分大小寫 並且區分大小寫,您可以使用 -i 選項:

uniq -i prueba.txt

好的,怎麼能做到 創建一個只有唯一行的文件,一次消除所有重複項。 好吧,就像使用管道將 uniq 的輸出通過管道傳輸到新的文本文件一樣簡單:

uniq prueba.txt > unicas.txt


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。