awk(三)If語句


條件判斷語句:
if(表達式)
{語句1}
elseif(表達式)
{語句2}
else
{語句3}
格式中"語句"可以多個語句,最好將多個語句用{}括起來。
例:
awk -F: '{if($1~/mail/){print$1}}' /etc/passwd#如果第一個字段為mail,輸出第一個字段
awk -F: '{if($1~/mail/)print$1}' /etc/passwd#簡寫,
 
awk -F: '{if($1~/mail|sshd/){print$1}}' /etc/passwd#如果第一個字段為mail或者sshd,輸出第一個字段
 
awk -F: '{if($1~/mail|sshd/){print$1}else{print$2}}' /etc/passwd#如果第一個字段為mail或者sshd,輸出第一個字段;其余輸出第二個字段
 
條件表達式
==   !=   >   >=
例:
awk -F: '{if($1=="mail"){print$1}}' /etc/passwd #如果第一個字段等於mail,輸出該行第一個字段
 
awk -F: '{if($1!="mail"){print$1}}' /etc/passwd#如果第一個段不等於mail,輸出該行第一個字段
 
awk -F: '{if($3>100){print$1}}' /etc/passwd #如果第三個字段大於100,輸出該行第一個字段
 
邏輯運算符
&&
awk -F: '{if($1~/mail/&&$3>1){print$1}}' /etc/passwd#如果該行的第一個字段為mail,並且第三個字段大於1,輸出該行的第一個字段
 
awk -F: '{if($1~/mail/||$3>100){print$1}}' /etc/passwd#如果該行的第一個字段為mail,或者第三個字段大於100,輸出該行的第一個字段
 
數值運算
awk -F: '{if($3>1&&$3<100){print$1}}' /etc/passwd#輸出字段3大於1小於100行的第一個字段
awk -F: '{if($3+$4==7){print$1}}' /etc/passwd#如果該行字段3和字段4的和為7,輸出該行的第一個字段
減法,乘積,除法等類似
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM