uniq命令

 

uniq命令bash

做用

uniq用於刪除文本中相鄰的重複的行,以及統計重複行的個數ide

語法:

uniq [ -c | -d | -u ] [ -f Fields ] [ -s Characters ] [ -Fields] [ +Characters ] [ InFile [ OutFile ] ]spa

參數

-c 顯示重複行的次數it

-d 僅顯示重複行(只顯示重複行的一次)class

-D 顯示重複的行(包括重複的內容)test

-u 僅顯示不重複的行語法

-f 忽略的字段數量統計

-i 忽略大小寫di

 

事例:

  • 刪除相鄰的重複行(必須是相鄰)view

[jeck@localhost~]$ cat test
aaa
aaa
bbb
bbb
ccc
ccc
aaaaa
bbbbb
aaaaa
ccccc
bbbbb
ccccc
 
[jeck@localhost~]$ uniq test
aaa
bbb
ccc
aaaaa
bbbbb
aaaaa
ccccc
bbbbb
ccccc
  • 顯示重複行出現的次數 -c

[jeck@localhost~]$ uniq -c  test
      2 aaa
      2 bbb
      2 ccc
      1 aaaaa
      1 bbbbb
      1 aaaaa
      1 ccccc
      1 bbbbb
      1 ccccc

 

  • 僅顯示重複行 -d -D

[jeck@localhost~]$ uniq -d  test
aaa
bbb
ccc
 
[jeck@localhost~]$ uniq -D  test
aaa
aaa
bbb
bbb
ccc
ccc

 

  • 僅顯示不重複行

[jeck@localhost~]$ uniq -u  test
aaaaa
bbbbb
aaaaa
ccccc
bbbbb
ccccc
  • 忽略前1個字段,再比較重複

[jeck@localhost~]$ cat test
aa aa
bb aa
cc aa
[jeck@localhost~]$ uniq -f 1 -D test
aa aa
bb aa
cc aa
發現,忽略掉一個字符以後,後面都是aa,都重複了,因此加-D會顯示出全部
相關文章
相關標籤/搜索