【Linux】Linux常用命令——uniq命令

Linux命令:uniq

1.介紹

uniq命名用於比較相鄰的行並去掉重複的行,對不相鄰的行無效;如果使用該命令不加任何命令行參數,則視爲刪除文本文件中重複的行之後進行輸出;如果指定輸出文件,則刪除到指定文件當中;

2.參數

  • -c:去掉相鄰重複的行,並在每列旁邊重複該行出現的次數
  • -u:僅顯示出現一次的行
  • -d:只顯示重複的行
  • [輸入文件]:指定已經排好序的文本文件,如果不指定此項,則從標準讀取數據
  • [輸出文件]:指定輸出的文件,如果不指定此選項,則將內容顯示到標準輸出設備(顯示終端)

3.命令測試文件內容

使用cat查看文件當中的內容

 

4.去除文件當中重複出現的行輸出到標準輸出設備

uniq:去重的命令

test2.txt:帶去重的文件名

 

注意:在去重的時候,文件內容沒有改變,只是在輸出的時候進行了過濾

5.刪除文件當中重複的行並輸出到指定文件當中

uniq [filename1] [filename2] :uniq命令加上待去重的文件,加上輸出文件,這樣就可以將重複的行去掉並且輸出到輸出文件當中去;

這裏,開始將輸出文件設爲空文件

 

  • ll:查看到文件內容的大小,test3.txt文件爲空
  • uniq:去重命令
  • test2.txt:待去重的文件
  • test3.txt:輸出文件名稱
  • cat test3.txt:查看test3.txt文件當中的內容,可以看到已經將test2.txt當中重複的行去掉,將結果保存在test3.txt中

6. 在每列旁邊顯示該行重複的次數

uniq -c [filename]:uniq 命令加上-c命令行參數,加上待去重的文件,這樣就可以在每列旁邊顯示該行重複出現的次數

 

-c:uniq的命令行參數,在每列旁邊顯示改行重複出現的次數;

(注意:uniq命名用於比較相鄰的行並去掉重複的行,對不相鄰的行無效)

7.顯示出現一次的行

uniq -u [filename]:uniq命令加上-u 命令行參數,加上待去重文件,這樣就可以展示文件當中只出現一次地行

 

-u:uniq的命令行參數,顯示文件當中只出現一次的行

8.只顯示重複的行

uniq -d [filename]:uniq命令加上-d 命令行參數,加上待去重文件,這樣就可以展示文件當中只重複出現的行(只出現一次)

-d:uniq的命令行參數,顯示文件當中重複的行