1. 程式人生 > >輕松了解awk

輕松了解awk

一個 $2 pri pass awk 支持 文章 雙分支 語句

awk支持for if while語句

for
單分支 if(判斷){指令}
雙分支 if(判斷){指令}else{指令}
awk -F: ‘{if($3<1000){x++}else{y++}} END{print x,y} ‘ /etc/passwd
多分支 if(判斷){指令}else if(判斷){指令}else{指令}

while(判斷){指令}
求詞頻(一個詞語在文章中出現的次數)
awk -F: ‘{i=1;while(i<=NF){if($i~/root/){x++};i++}} END{print x}‘ /etc/passwd
awk -F: ‘{
i=1;
while(i<=NF){if($i~/root/){x++};i++}

}
END{print x}‘
/etc/passwd

數組格式
awk ‘BEGIN{a[0]=11;a[1]=22;print a[0],a[1]}‘
統計一個文檔中的某個單詞的公式 : awk ‘{IP[$1]++} END{}END{for(i in IP){print IP[i],i}}‘ /var/log/httpd/access_log

awk ‘{IP[$1]++} END{}END{for(i in IP){print IP[i],i}}‘ /var/log/httpd/access_log | awk ‘$1>4{print $2}

輕松了解awk