我想将条件表达式的结果存储在环境变量中。
我试过:
C=$([ "$A" = "$B" ])
但运行后的值$C
是一个空字符串。
我当然可以做这样的事情:
if [ "$A" = "$B" ]
then
C=1
else
C=0
fi
但我确信有更好的方法。
答案1
我认为最简单的解决方案是:
C=$(! [ "$A" = "$B" ]; echo $?)
这只是否定测试命令的退出代码并将其分配给$C
。
答案2
使用如下表达式:
variable=$([ "A" == "B" ] && echo "true" || echo "false")