1. 程式人生 > >Linux中cut,sort,uniq和wc的用法

Linux中cut,sort,uniq和wc的用法

一.cut是一個選取命令,就是將一段資料經過分析,取出我們想要的。一般來說,選取資訊通常是針對“行”來進行分析的,並不是整篇資訊分析的。
1.語法格式為:
cut [-bn] [file] 或 cut [-c] [file] 或 cut [-df] [file]
2.使用說明
cut 命令從檔案的每一行剪下位元組、字元和欄位並將這些位元組、字元和欄位寫至標準輸出。
如果不指定 File 引數,cut 命令將讀取標準輸入。必須指定 -b、-c 或 -f 標誌之一。
3.主要引數
-b :以位元組為單位進行分割。這些位元組位置將忽略多位元組字元邊界,除非也指定了 -n 標誌。
-c :以字元為單位進行分割。
-d :自定義分隔符,預設為製表符。
-f :與-d一起使用,指定顯示哪個區域。

二.sort將檔案的每一行作為一個單位,相互比較,比較原則是從首字元向後,依次按ASCII碼值進行比較,最後將他們按升序輸出.
-u : 它的作用很簡單,就是在輸出行中去除重複行。
-r : sort預設的排序方式是升序,如果想改成降序,就加個-r就搞定了。
-o : 把sort的標準輸出到原檔案中去。
-n : 以數值來進行排序。
你有沒有遇到過10比2小的情況。我反正遇到過。出現這種情況是由於排序程式將這些數字按字元來排序了,排序程式會先比較1和2,顯然1小,所以就將10放在2前面嘍。這個時候就要用到-n選項了。
-t : 指定分隔符
-k : 指定分隔符後,指定列數。
-f : 忽略大小寫

三.uniq命令可以去除排序過的檔案中的重複行,因此uniq經常和sort合用。也就是說,為了使uniq起作用,所有的重複行必須是相鄰的。
-i :忽略大小寫字元的不同;
-c :進行計數,顯示檔案中每行連續出現的次數。
-u :只顯示唯一的行
-d : 顯示檔案中連續重複出現的行。
注意:uniq通常和sort一起使用,因為uniq去重的前提是重複的行必須是相鄰的,所以在使用時,先用sort進行排序,然後再使用uniq。

四.wc統計檔案裡面有多少單詞,多少行,多少字元。
-l :僅列出行;
-w :僅列出多少字(英文單字);
-m :多少字元;