awk用法(三)
知識點一:
NR行數,NF段數
1、#awk -F ':' 'NR==10' 1.txt 【行數是第10行的】
2、#awk -F ':' 'NR==10 {print $1,$7}' 1.txt 【只打印出第10行中的第1段和第七段】
3、#awk -F ':' '{if(NR==10) print $1,$7}' 1.txt
#awk -F ':' 'OFS="#" {if(NR==10) print $1,$7}' 1.txt
以上三點截圖如下:
4、#awk -F ':' '{print NF}' 1.txt
截圖如下:
注意:上條命令的行數等於文檔1.txt的行數,截圖如下:
#awk -F ':' '{print NR}' 1.txt
截圖如下:
#awk -F ':' '{print $NR}' 1.txt
截圖如下:
#awk -F ':' '{print $NF}' 1.txt == awk -F:'{print $7}' 1.txt
5、awk -F ':' '{if(NF==7) print $1}' 1.txt
內置變量一共介紹了3種,OFS,NF,NR
知識點二:數學運算
1、#awk -F ':' '$7=$3+$4' 1.txt 【給第七段賦值爲第三段加第四段的值】
注意:當顯示的文檔發生改變時,默認以空格爲分隔符!
指定分隔符格式:
#awk -F ':' 'OFS=":" {$7=$3+$4;print $0}' 1.txt
2、#awk -F ':' '{sum=sum+$3}; END {print sum}' 1.txt
#awk -F ':' '{(sum=sum+$3)}; END {print sum}' 1.txt
兩式結果相同,都是計算第三段數值相加的總和,上述命令是循環計算!