linux if 判断多个条件,awk if 多个条件_awk if else if else_shell if 多个条件
条件判断语句:if(表达式){语句1}elseif(表达式){语句2}else{语句3}格式中'语句'可以多个语句,最好将多个语句用{}括起来。例:[kodango@devops awk_temp]$ awk -f: '{print $1}' /etc/passwd | head -3。[kodango@devops awk_temp]$ awk -f: '{print $nf}' /etc/pa
条件判断语句:
if(表达式)
{语句1}
elseif(表达式)
{语句2}
else
{语句3}
格式中'语句'可以多个语句,最好将多个语句用{}括起来。
例:
[kodango@devops awk_temp]$ awk -f: '{print $1}' /etc/passwd | head -3。[kodango@devops awk_temp]$ awk -f: '{print $nf}' /etc/passwd | head -3。4.awk -f: '/regix/ {print $1} ' /etc/passwd正则字符串匹配。
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,输出该行第一个字段
[kodango@devops ~]$ awk '$1 ~ /ko/ {print}' /etc/passwd。[kodango@devops awk_temp]$ awk -f: '{print $1}' /etc/passwd | head -3。[kodango@devops awk_temp]$ awk -f: '{print fs}' /etc/passwd | head -1。
逻辑运算符
&&
你会发现awk if 多个条件,为0,则说明该cache单元在此之前尚未使用,其标志字段、数据字段的内容是无效的。
awk -F: '{if($1~/mail/||$3>100){print$1}}'/etc/passwd#如果该行的第一个字段为mail,或者第三个字段大于100,输出该行的第一个字段
数值运算
50 and cost(85)<,0),1) and 现价>,stick,nodraw:= sma (现价:if(现价<,0)*200,1) and 现价>,13。[root@tx3 ~]# awk '{ if ($2 >= 90 && $2 <= 100) {print $1,"a"} else if ($2 >= 80 && $2 < 90) {print $1,"b"} else if ($2 >= 70 && $2 < 80) {print $1,"c"} else if ($2 >= 60 && $2 < 70) {print $1,"d"} else {print $1,"e"} }' cj。[root@tx3 ~]# awk '{if ($2>=80 && $2 <=100) {print $1,"great"} else {print $1, "good"}}' cj。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-103765-1.html
更多推荐
所有评论(0)