与其他编程语言一样,AWK提供条件语句来控制程序的流程.本章通过合适的例子解释了AWK的控制语句.
它只是测试条件并根据条件执行某些操作.下面给出的是语法if 语句 : :
if(条件) action
我们也可以使用下面给出的一对花括号来执行多个动作 :
if(condition){ action-1 action-1 . . action-n }
例如,以下示例检查数字是否为偶数 :
[jerry]$ awk 'BEGIN {num = 10; if (num % 2 == 0) printf "%d is even number.\n", num }'
执行上述代码时,你得到以下结果 :
10 is even number.
在 if-else 语法中,我们可以提供一个列表条件变为假时要执行的操作.
if-else 语句的语法如下 :
if (condition) action-1 else action-2
在上面的语法中,当条件计算结果为true时执行action-1,当条件计算结果为false时执行action-2.例如,以下示例检查数字是否为偶数 :
[jerry]$ awk 'BEGIN { num = 11; if (num % 2 == 0) printf "%d is even number.\n", num; else printf "%d is odd number.\n", num }'
执行此代码时,你得到以下结果 :
11 is odd number.
我们可以轻松创建 if-else-if 使用多个 if-else 语句的梯形图.以下示例演示了此 :
[jerry]$ awk 'BEGIN { a = 30; if (a==10) print "a = 10"; else if (a == 20) print "a = 20"; else if (a == 30) print "a = 30"; }'
执行此代码后,您将得到以下结果 :
a = 30