linux uniq 命令實用手冊

2022-01-10 07:38:33 字數 2084 閱讀 3712

linuxuniq命令用於處理文字內容中的重複行

這裡我們只介紹其常用引數,其完整用法可參見man uniq

例如,我們有如下檔案內容:

>>> cat log.txt

_______________

hello

hello

world

world

hello

使用uniq命令,不加任何引數處理,注意,這裡的兩行hello並沒有相鄰,所以最終還是顯示了兩行hello,而兩行world是相鄰的,所以去掉了其中一行world

>>> uniq log.txt 

hello

hello

world

hello

如果想將不相鄰的相同內容也去重,一般需要與sort命令配合使用,先排序,再去重,如下(這時所有的重複行都被去重了):

>>> cat log.txt | sort| uniq

____________________________

hello

hello

world

使用-s引數,忽略前n 個字元(此處忽略了前2 個字元):

>>> cat log.txt | sort| uniq -s 2

_________________________________

hello

world

使用-i引數,忽略大小寫(最終只剩下了大寫的):

>>> cat log.txt | sort| uniq -i

_______________________________

hello

world

使用-d引數,只輸出重複的行hello沒有重複,所以沒有輸出):

>>> cat log.txt | sort| uniq -d

_______________________________

hello

world

使用-u引數,與-d引數相反,只輸出不重複的行hello沒有重複,所以輸出):

>>> cat log.txt | sort| uniq -u

———————————————————————————————

hello

使用-c引數,計算重複行的次數,如下(第一列為出現的次數):

>>> cat log.txt | sort| uniq -c

_______________________________

1 hello

2 hello

2 world

按照重複次數進行反向排序

cat log.txt | sort| uniq -c| sort -nr

—————————————————————————————————————

2 world

2 hello

1 hello

下面總結以上介紹到的引數:

引數含義

-s n

忽略前n 的字元

-i

忽略大小寫

-d

只輸出重複的行

-u

只輸出不重複的行

-c

對重複的行進行計數

(完。)

linux sort 命令實用手冊

linux 中的sort命令是乙個很實用的工具,用於對文字內容以行為單位進行ascii 碼排序,預設按照公升序進行排序 當然也可以按照降序 sort命令的格式如下 sort 引數 檔名 這裡不打算介紹其完整的使用方法,只介紹其重用方法,其完整手冊可參看man sort。比如,我們有如下文字內容,可以...

Rcpp實用手冊

c 對應於r的資料型別有如下這些 double numeric int integer string character logical bool 在c 中可以直接使用r的物件有 所有算術邏輯運算子都是可以向量化的 pow,include using namespace rcpp rcpp expo...

tar 實用手冊

url tar 命令用來將很多檔案打包成乙個單一的磁帶或者磁碟歸檔,並可從歸檔檔案恢復出檔案列表。當你需要通過 email 傳送大量檔案時或者傳輸檔案時非常有用。這裡我們介紹一些基本的使用場景。tar 的語法 tar options file.tar file1 file2 file.tar 是 t...