bash 脚本的新手。在 bash 脚本的开头,一个变量被初始化
silent_install=true
然后这个变量在脚本中有以下2种方式使用
if [ -z "$silent_install" ]; then
和
if [ -z ${silent_install} ]; then
这两种用法有什么区别?
最佳答案
简短:第二个是错误的。
错误,因为未加引号的变量将被分词。如果变量包含空格,测试将失败。
{}
没有区别,您可以使用或不使用它们,带引号或不带引号。但是,通常我会建议使用它们。特别是如果你像 "$foo_bar"
那样插入它们。这里的变量名是什么? "${foo}_bar"
干净多了。
因此我会使用:
if [ -z "${silent_install}" ] ; then
关于bash - 在 bash 脚本 if 语句中使用 ${ },我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35671520/