我想决定是否总是省略 Bash[[
测试中出现的变量的引号。我将man
页面解释为可以在不损失任何正确性的情况下这样做。
我设计了这个简单的“测试”来验证我的想法和“预期的行为”,但它可能完全证明不了,看看它:
x='1 == 2 &&'; if [[ $x == '1 == 2 &&' ]]; then echo yes; else echo no; fi
注意我不是这样写的:
x='1 == 2 &&'; if [[ "$x" == '1 == 2 &&' ]]; then echo yes; else echo no; fi
到目前为止,这一直是我的风格,如果没有别的,那就是为了保持一致性。
将我的编码约定切换为始终省略[[
测试中出现的变量的引号是否安全?
我正在尝试学习 Bash,并且正在努力培养良好的习惯、良好的风格和正确性。