69. 简单的 if 语句


简单的 if 语句测试一个条件,如果条件返回 true ,则执行相应的操作。

语法:

if (conditional-expression)
    action
  • if 是一个关键字
  • conditional-expression 表示要测试的条件
  • action 是要执行的 awk 语句

如果条件为真时需要执行多个操作,则应将这些操作括在花括号中。各个操作(awk 语句)应使用换行符或分号分隔,如下所示。

语法:

if (conditional-expression)
{
    action1;
    action2;
}

如果条件为真,则大括号内的所有操作都将按给定顺序执行。 执行完所有操作后,awk 继续执行下一条语句。

打印数量 <=5 的所有项目:

$ awk -F "," '{ if ($5 <= 5) print "Only",$5,"qty of",$2, "is available"; }' items.txt
Only 2 qty of Refrigerator is available
Only 5 qty of Laser Printer is available

您还可以在 if 语句中使用多个条件运算符。

如下所示,此示例打印价格在 500 到 1000 之间的所有商品,且总数量 <= 5:

$ awk -F "," \
'{ if ( ($4 >= 500 && $4 <= 1000) && ($5 <= 5)) \
print "Only",$5,"qty of",$2,"is available";}' items.txt
Only 2 qty of Refrigerator is available