当使用 awk 命令与 if 条件时,需要注意将条件用括号括起来,以确保测试被正确地解释。例如,考虑以下代码:
awk '{
if ($1 == "hello")
print "greetings"
}' file.txt
这个 awk 命令将打印出 file.txt 文件中所有以 "hello" 开头的行。然而,如果我们改变 if 条件,检查多个变量时,我们需要将条件用括号括起来:
awk '{
if (($1 == "hello") && ($2 == "world"))
print "greetings"
}' file.txt
现在,awk 命令仅输出那些以 "hello world" 开头的行。因此,如果您的 awk 和 if 条件不正常工作,请检查您的条件是否正确括号化。