unix – 如何检查AWK脚本中的变量值是空还是空?

>我正在使用AWK脚本处理一些日志。
>在某个地方,我需要检查变量值是空值还是空值来做出一些决定。

任何想法如何实现相同?

awk '

{
    {
       split($i,keyval,"@")
       key=keyval[1];
       val=keyval[2];
       if(val ~ /^ *$/)
       val="Y";

    }

}

' File

我试过了

1) if(val == "")

2) if(val ~ /^ *$/)

在两种情况下都不工作。

与“”的比较应该是有效的,这有点奇怪

作为另一种选择,您可以使用length()函数,如果为零,则您的变量为空/空。例如。,

if (length(val) == 0)

另外,也许内置的变量NF(字段数)可能会派上用场?由于我们无法访问您的输入数据,所以很难说,但另一种可能性。

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...