如何检查命令-v $ 1> / dev / null 2>& 1;是假的?

时间:2016-04-19 10:04:21

标签: bash shell

我正在寻找一种正确的方法来检查命令是否存在。我通读了Check if a program exists from a Bash script。到目前为止,我提出了:

command_exists () {
    command -v $1 >/dev/null 2>&1;
}

if command_exists aws; then
    echo # null
else
    brew install awscli
fi

必须有一种只有一个if子句的方法:

if ! command_exists aws; then
    brew install awscli
fi

更新:没关系,以上解决方案有效。

1 个答案:

答案 0 :(得分:1)

我定义了类似的函数,并且没有理由说明你的代码片段不起作用。

if ! command_exists aws; then
    brew install awscli
fi

如果您愿意,可以这样缩短:

command_exists aws || brew install awscli