您的位置:首页 > 职场人生

awk条件表达式

2011-08-26 11:58 169 查看
条件表达式的运算要用到2个符号:问号和冒号。其实就是if/else语句的捷径,他们有着相同的效果。

格式如下

表达条件式1 ?表达式2:表达式3

上面格式用if/else语句表达的结构就是

{

if (expression1)

expression2

else

expression3

}

--------------------------------------------------------------------------------------------------

for example

awk '{max=($1 > $2 ) ? $1 : $2;print max}' filename

详细说明

如果$1大于$2,则把问号后面的那个表达式的值赋给max,否则就将冒号后面那个表达式的值赋给max

相当于

if ( $1 > $2 )

max=$1

else

max=$2

举个列子

[leo@leo ~]$ echo "100 99" | awk '{max=( $1 > $2 )?$1:$2;print max}'

100

[leo@leo ~]$ echo "100 99" | awk '{max=( $1 < $2 )?$1:$2;print max}'

99

这样来的用法可以用来取最大值和最小值!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息