条件表达式的运算要用到两个符号:问号和冒号。条件表达式其实就是if/else语句的捷径,它们有着相同的结果。条件表达式的一般格式如下所示。
格式
条件表达式
1
? 表达式
2 : 表达式
3
上面这条语句能够产生与下面的if/else语句相同的结果(后面将对if/else结构进行全面讨论)。
{
if (expression1 )
expression2
else
expression3
}
if (expression1 )
expression2
else
expression3
}
范例
$ awk
'{max=($1 > $2) ? $1 : $2;print max}' filename
说明:如果记录的第1个字段的值大于第2个字段的值,则把问号后面那个表达式的值赋给max,否则就将冒号后面那个表达式的值赋给max。