前端之家收集整理的这篇文章主要介绍了
unix – 如何检查AWK脚本中的变量值是空还是空?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
>我正在使用AWK脚本处理一些日志。
>在某个地方,我需要检查变量值是空值还是空值来做出一些决定。
任何想法如何实现相同?
awk '
{
{
split($i,keyVal,"@")
key=keyVal[1];
val=keyVal[2];
if(val ~ /^ *$/)
val="Y";
}
}
' File@H_301_5@
我试过了
1) if(val == "")
2) if(val ~ /^ *$/)@H_301_5@
在两种情况下都不工作。
与“”的比较应该是有效的,这有点奇怪
作为另一种选择,您可以使用length()函数,如果为零,则您的变量为空/空。例如。,
if (length(val) == 0)@H_301_5@
另外,也许内置的变量NF(字段数)可能会派上用场?由于我们无法访问您的输入数据,所以很难说,但另一种可能性。