【发布时间】:2018-06-11 00:43:37
【问题描述】:
在 shell 脚本中,我使用的是这样的三元运算符:
(( numVar == numVal ? (resVar=1) : (resVar=0) ))
我观看了 Derek Banas 的 shell 脚本教程,并在视频的 41:00 获得了上述语法
https://www.youtube.com/watch?v=hwrnmQumtPw&t=73s
当我们将数字分配给resVar 时,上面的代码有效,但如果我尝试将字符串分配给resVar,它总是返回0。
(( numVar == numVal ? (resVar="Yop") : (resVar="Nop") ))
也试过了
resVar=$(( numVar == numVal ? (echo "Yop") : (echo "Nop") ))
那么正确的做法是什么?
【问题讨论】:
标签: string shell scripting ternary-operator