检查 bash 命令返回的行数

  • 本文关键字:返回 bash 命令 检查 bash
  • 更新时间 :
  • 英文 :


我有一个类似于这样的命令:

LIST=$(git log $LAST_REVISION..$HEAD --format="%s" | egrep -o "[A-Z]-[0-9]{1,4}" | sort -u)

现在,如果$LIST返回零行或多行,我需要做一些事情。这是我尝试过的:

if [ ! $($LIST | wc -l) -eq 0 ]; then
    echo ">0 lines returned"
else
    echo "0 lines returned"
fi

但它给我抛出了一个错误。执行此操作的正确语法是什么(如果可能,请提供有关所用语法的一些详细信息)?

要检查变量是否为空,请使用 test -z ,可以通过多种方式编写:

test -z "$LIST"
[ -z "$LIST" ]

使用 bash(或许多其他"现代"炮弹):

[[ -z $LIST ]]

我更喜欢最后一个,只要你使用 bash 即可。

请注意,您正在执行的操作:$($LIST | ...)是将$LIST作为命令执行。这几乎肯定会产生错误,并且如果$LIST为空,则保证这样做。

相关内容

  • 没有找到相关文章

最新更新