【Shell脚本技巧】Shell三元表达式(类似?:运算符)

shell能否实现三元表达式呢?像下面这样:

result = (isOk == 1) ? "yes" : "NO";

实现方法:

result=$([ "$isOk" == 1 ] && echo -n "yes" || echo -n "NO")

原理:

&&的优先级比||高,所以如果前面的&&成功,后面的||就不会执行;相反,后面的||就会执行。

posted @ 2022-06-08 19:43  极客子羽  阅读(3485)  评论(0)    收藏  举报