bash脚本如果测试的一行快捷方式

时间:2018-10-22 00:38:50

标签: bash shell

是否存在执行以下操作的捷径(即全部一行)?

if [ -z "$PASSWORD" ] ; then
    echo "PASSWORD envvar required. Exiting..."
    exit 1
fi

我正在考虑以下内容。也许还有更短的方法。

[ -z "$PASSWORD" ] && ...

也就是说,如何放置回显然后在 &&

之后退出

2 个答案:

答案 0 :(得分:2)

您可以这样做:

[ -z "$PASSWORD" ] && { echo "PASSWORD envvar required. Exiting..."; exit 1; }

请注意在;之前的行末尾有多余的},这是必要的,您不能将其遗漏。

它叫a command group.

答案 1 :(得分:-5)

[[ -z "$PASSWORD" ]] && echo "PASSWORD envvar required. Exiting." && exit 1

您的单括号可以正常工作。 Consider learning to use the doubles, though.