01、字段提取命令 cut => cut [選項] 文件名
-f 列號: 提取第幾列
-d 分隔符:按照指定分割符分割列
例如:cut -f 2,4(列號;,逗號可以多行提取) student.txt
cut -d “:” -f 1,3 /etc/passwd
02、格式化輸出命令 printf 命令 => printf ‘輸出類型輸出格式’ 輸出內容
輸出類型:
%ns:輸出字符串。n 是數字指代輸出幾個字符
%ni:輸出整數。n 是數字指代輸出幾個數字
%m.nf:輸出浮點數。m是整數,n是小數
輸出格式:
\a:輸出警告聲音
\b:輸出退格鍵,刪除鍵
\f:清楚屏幕
\n:換行
\r:回車
\t:水平輸出退格鍵
\v:垂直輸出退格鍵
03、awk命令 => awk ‘條件1{動作1}條件2{動作2}....’ 文件名 條件 (Pattern)
動作(Action):
格式化輸出
流程控制語句
例如:awk ‘ { printf $2 "\t" $6"\n" } ’ student.txt
$2、$6:代表第幾行
BEGIN => awk ‘BEGIN{print "test !!"} { printf $2 "\t" $6"\n" } ’ student.txt
BEGIN 會在所有的數據處理完之前執行
例如:FS內置變量
cat /etc/passwd | grep "/bin/bash" | \ awk 'BEGIN {FS=":"} {printf $1 "\t" $3 "\n"}'
END => 相反 :所有的數據處理完之后執行
04、sed 命令 :是一種幾乎包括在所有UNIX平台(包括Linux)的輕量級流編輯器。
sed 主要是用來將數據進行選取、替換、刪除、新增的命令。
sed [選項] -‘[動作]’- 文件名
-n:一般sed命令會把所有數據都輸出到屏幕,如果加入此選擇,則只會把經過sed命令處理的行輸出到屏幕
-e:允許對輸入數據應用多條sed命令編輯
-i:用sed的修改結果直接修改讀取數據的文件,而不是由屏幕輸出
動作:

打印,輸出指定行:sed -n ‘2p’ student.txt
刪除:sed “2,4d” student.txt => 刪除2 -- 4行的數據,但是不修改文件本身
追加:sed ‘2a Hello’ student.txt 在第二行后追加 hello
插入:sed ‘2i wrold Hello ’ student.txt 在第二行前插入兩行數據
字符串替換:sed -i ‘2s/99/55/g’ student.txt 把第2行的99替換成55
加上 -i:連同文件一起修改,不加只是對打印修改
加-e:sed -e ‘s/Liming/ads/g;s/Gao/ads/g’ student.txt
同事把“Liming” 和 “Gao” 替換為ads
05、排序命令 => sort [選項] 文件名
選項:
-f:忽略大小寫
-n:以數值型進行排序,默認使用字符串型排序
-r:反向排序
-t:指定分隔符,默認是制表符
-k n[,m]:按照指定的字段范圍排序。從第n字段開始,m字段結束(默認到行尾)
例如:sort -t ":" -k 3,3 /etc/passwd (一般不需要)
指定分隔符是 “:”,用第三字段開頭,第三字段結尾排序,就是只用第三字段排序(用戶UID排序)
06、統計命令 => wc [選項] 文件名
選項:
-l:只統計行數
-w:只統計單詞數
-m:只統計字符數
