2021-05-12 14:32:11
Linux Shell - 如何使用sort與uniq命令刪除重複的文字行
需要對紀錄檔檔案中的資料進行排序,但是有太多重複的行。 如何從GNU/Linux下的文字檔案中刪除所有重複的行?
您需要使用shell管道以及以下兩個Linux命令列實用程式來排序和刪除重複的文字行:
1、sort命令 - 在Linux和類Unix系統中對文字檔案行進行排序。
2、uniq命令 - 在Linux或Unix上執行或省略重複的行
使用Sort,Uniq和Shell管道刪除重複行
使用以下語法:
sort {file-name} | uniq -u
sort file.log | uniq -u
使用uniq刪除重複的行
以下是使用cat命令顯示的名為garbage.txt的範例測試檔案:
linuxidc@linuxidc:~/www.linuxidc.com$ cat linuxidc.com.txt
樣本輸出:
Linux公社(www.linuxidc.com)於2006年9月25日註冊並開通網站
Linux現在已經成為一種廣受關注和支援的一種作業系統
IDC是網際網路資料中心,LinuxIDC就是關於Linux的資料中心。
實時發布最新Linux資訊
Linux公社是專業的Linux系統入口網站
實時發布最新Linux資訊,包括Linux、Ubuntu、Fedora、RedHat
Linux教學、Linux認證、SUSE Linux、Android、Oracle、Hadoop等技術。
實時發布最新Linux資訊
實時發布最新Linux資訊
從Linux上的文字檔案中刪除重複的行
鍵入以下命令以刪除所有重複行:
linuxidc@linuxidc:~/www.linuxidc.com$ sort linuxidc.com.txt | uniq -u
樣本輸出:
IDC是網際網路資料中心,LinuxIDC就是關於Linux的資料中心。
Linux公社(www.linuxidc.com)於2006年9月25日註冊並開通網站
Linux公社是專業的Linux系統入口網站
Linux教學、Linux認證、SUSE Linux、Android、Oracle、Hadoop等技術。
Linux現在已經成為一種廣受關注和支援的一種作業系統
實時發布最新Linux資訊,包括Linux、Ubuntu、Fedora、RedHat
在這裡,
-u:檢查是否有嚴格的排序,刪除所有重複的行。
在Linux上排序檔案內容
我們假設您有一個名為users.txt的檔案:
相關文章