1. 程式人生 > >cut,sort,uniq,tee,tr,split命令

cut,sort,uniq,tee,tr,split命令

一個 這樣的 uniq命令 去重 字段排序 字符操作 輸出 整數 依據

● cut命令(分割)
語法:cut -d ‘分隔符’ [-cf] n 這裏的n是正整數
-d:後面指定分隔符,用單引號引起來
-f:指定第幾段
-c:後面只有一個數字表示截取第幾個字符,後面跟一個數字區域,表示截取從幾到幾
head -n2 /etc/passwd|cut -d ‘:‘ -f 1
技術分享圖片
head -n2 /etc/passwd|cut -c2
技術分享圖片
● sort命令(排序)
語法:sort -t 分隔符 -kn1,n2 -nru 這裏的n1<n2
-t:分隔符
-n:使用純數字排序
-r:反向排序
-u:去重復
-kn1,n2:由n1區間排序到n2區間,可以只寫-kn1,即對n1字段排序
如果把-nu一起用,sort會把文檔中的字母看成0
不加任何選項,則從首字符向後,依次按ASCII碼值進行比較,最後按升序輸出
head -n5 /etc/passwd|sort -t: -k3 -n技術分享圖片

● uniq命令(去除重復)
用來去除重復的行,常用選項-c,統計重復的行數,並把行數寫在前面。
使用uniq的前提是需要先給文件排序,否則不管用。
技術分享圖片

● tee命令(重定向並顯示)
後跟文件名,類似重定向,但可以顯示在屏幕上,-a為追加重定向
技術分享圖片

● tr命令(替換字符)
用於替換字符,常用來處理文檔中出現的特殊符號。
-d:刪除某個字符,-d後面跟要刪除的字符
-s:把重復的字符去掉
最常用的就是把小寫變大寫
head -n2 /etc/passwd |tr ‘[a-z]‘‘[A-Z]‘

技術分享圖片
該命令只針對一個字符操作。
● split命令(切割文檔)
常用來切割文檔
-b:依據大小來分割文檔,單位為byte
如果split不指定目標文件名,則會以xaa,xab……這樣的文件名來存取切割後的文件。
指定文件名:split -b50 111.txt 123
-l:依據行數來分割文檔
split -l2 111.txt
技術分享圖片

cut,sort,uniq,tee,tr,split命令