您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關如何快速上手Linux的uniq命令的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
Linux uniq命令用于檢查及刪除文本文件中重復出現的行列。uniq可檢查文本文件中重復出現的行列。
uniq [選項] [file]
選項說明:
-c,--count:顯示行出現的次數 -d,--repeated:僅顯示重復出現的行,即出現次數>=2的行,且只打印一次 -D,--all-repeated[=delimit-method]:僅顯示重復的行,即出現次數>=2的行,且打印重復行的所有行。其中delimit-method表示對重復行集合的分隔方式,有三種取值,分別為none、prepend和separate。其中none表示不進行分隔,為默認選項,uniq -D等同于uniq --all-repeated=none;prepend表示在每一個重復行集合前面插入一個空行;separate表示在每個重復行集合間插入一個空行。 -f,--skip-fields=N:忽略前N個字段。字段由空白字符(空格符、Tab)分隔。如果您的文檔的行被編號,并且您希望比較行中除行號之外的所有內容。如果指定了選項-f 1,那么下面相鄰的兩行: 1 這是一條線。 2 這是一條線。 將被認為是相同的。如果沒有指定-f選項,它們將被認為是唯一的。 -i,--ignore-case:忽略大小寫字符的不同 -s,--skip-chars=N:跳過前面N個字符不比較 -u,--unique:只顯示唯一的行,即出現次數等于1的行 -w,--check-chars=N:指定每行要比較的前N個字符數 --help:顯示幫助信息 --version:顯示版本信息
(1)對無序文件去重無效。 testfile的內容如下:
cat testfile hello world friend hello world hello
直接刪除未經排序的文件,將會發現沒有任何行被刪除:
#uniq testfile hello world friend hello world hello
(2)uniq結合sort命令,對排序文件去重。
#cat testfile | sort | uniqfriend hello world
(3)排序之后刪除了重復行,同時在行首位置輸出該行重復的次數。
#sort testfile | uniq -c1 friend 3 hello 2 world
(4)僅顯示存在重復的行,并在行首顯示該行重復的次數:
#sort testfile | uniq -dc3 hello 2 world
(5)僅顯示不重復的行。
sort testfile | uniq -u friend
(6)僅顯示重復的行,且顯示重復行的所有行。
sort testfile | uniq -D hello hello hello world world
(7)uniq默認是比較相鄰行的所有內容來判斷是否重復,我們可以通過選項-w
或--check-chars=N
指定比較前N個字符。比如我們有如下內容的文件test.txt:
apple application api
打印前三個字符相同的行:
uniq -w3 -D test.txt apple application
感謝各位的閱讀!關于“如何快速上手Linux的uniq命令”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。