将命令与字符串进行Bash比较



我想运行一个命令,并将该命令产生的结果与另一个值进行比较,然后返回0或1。

例如(在伪代码中(沿着以下行的东西:

if ($(app --version) == "1.2.3") then echo 1" else echo "0"

最好抑制从app-version输出的实际命令,以便根据结果只将0或1写入stdout。

我怎么能用bash做到这一点?有快速的单程票吗?

这些有效吗?

$ if [ "$(<path>/app --version)" = "1.2.3" ]; then echo 0; else echo 1; fi
0
$ [ "$(<path>/app --version)" = "1.2.3" ] && echo 0 || echo 1
0
if [[ $(app --version) == 1.2.3 ]]
then
echo 0
else
echo 1
fi

将在bash中工作(以及在zsh和ksh中,如果这很重要的话(。

最新更新