擷取命令cut命令、awk命令、sed命令
cut命令
擷取以製表符tab為分隔符的第一列
cut -f 1test.txt
擷取以":"為分隔符的第一列,如果比較規律的檔案,可以自己設定分隔符
cut -f 1 -d ':' tset.txt
擷取以“:”為分隔符的第一列和第三列
cut -f 1,3 -d ':' tset.txt
#命令都是用的英文狀態的符號
awk命令
擷取第二列和第四列,預設為空格,或者製表符
awk ‘{print $2 "\t" $4}’ test.txt
擷取以:為分隔符的第一列和第三列
awk '{FS=":"}{print $1 "\t" $3}' test.txt 也可以寫成:awk -F ":" '{print $1 "\t" $3}'
也可以寫成
awk '{FS=":"}{print $1 "\t" $3}' (這是一個比較標準的寫法)
sed命令:其實是替換操作,sed修改的只是顯示的內容,檔案並未修改
輸出第十行,-n必須要加,否則會顯示所有內容,-i表示修改檔案內的內容,這個謹慎操作,-e則表示執行多個動作
sed -n '10p' regular_express.txt
刪除2-4行
sed '2,4d' regular_express.txt
在第二行上一行顯示wanmei
sed '2i wanmei' regular_express.txt
在第二行下一行顯示wanmei
sed '2a wanmei' regular_express.txt
替換行,將第四行全部替換為nowanmei
sed '4c nowanmei' regular_express.txt
字串替換
sed 's/舊字串/新字串/g' regular_express.txt
替換第四行的舊字串
sed '4s/舊字串/新字串/g' regular_express.txt
sort命令:排序的作用
選項:
-f 忽略大小寫
-n以數值型進行排序,預設是字串型排序
-r反向排序
-t指定分隔符,預設分隔符為製表符
-k[n,m]按照指定的欄位範圍排序,從第n欄位開始,m欄位結束(預設到行尾)
sort -n -t ':' -k '3,3' /etc/passwd 以':'為分隔符的第三欄位開始到第三欄位結束進行排序
wc命令:統計命令
wc [選項] 檔名
-l 只統計行數
- w 只統計單詞書
- m 只統計字元數,包含換行符