awk是行處理器: 相比較屏幕處理的優勢,在處理龐大文件時不會出現內存溢出或是處理緩慢的問題,一般用來格式化文本信息spa
awk處理過程: 依次對每一行進行處理,而後輸出內存
awk -F':' '/root/ {print $1}' 1.txt -F指定分隔符(默認以空白字符爲分隔符);print打印;printf不換行打印;$n第n段;$0 整行;/root/篩選有root的行並打印第一段 awk
awk -F ':' '/root|user/ {print $1}' 1.txt 篩選有root或者user的行,以:分割段,打印每行第一段。循環
awk -F':' '{print $1}' 1.txt 以:爲分隔符,打印每行第一段。文件
awk -F ':' '$3=="0" {print $1}' 1.txt 篩選第三段等於字符零的ASCII碼的行,打印第一段 co
awk -F ':' '$3==0 {print $1}' 1.txt 篩選第三段等於數字0的行,打印第一段字符
awk -F':' '$1 ~ /oo/' 1.txt 以:分割,篩選第一段包含oo的行 數字
awk -F':' '{OFS="#"} {print $1,$2}' {OFS="#"}指定輸出分割符,輸出字段多時用,少時直接{print $1"#"$2}分割
{print NR}行號printf
{print NF}段號
awk -F':' '{(sum=sum+$3)} ;END {print sum}' 1.txt 第三段求和,END循環結束以後再操做的語句