美好的一天,
我想知道如何在AWK中获取扩展变量。
要传递的变量:achi
但是,当我尝试:
awk -F, -v var1="achi" '$(NF-1)~var1' file
它不起作用。它会打印与achi
匹配的所有行。
我会很感激一些正确的见解。
输入
achi, francia
nachi, peru
universidad achi, japon
achito, suecia
预期输出
achi, francia
答案 0 :(得分:3)
您似乎正在尝试使用模式匹配运算符~
来测试等效性。测试等价的适当运算符是==
。
awk -F, -v var1="achi" '$(NF-1)==var1' file
如果您需要更多字段,则应考虑使用逗号和空格分隔您的值,可以使用", "
作为字段分隔符来完成。
awk -F", " -v var1="achi" '$(NF-1)==var1'