有人可以请我解释为什么有些Linux专家建议我们在Bash脚本中使用$ {VARIABLE}吗?似乎没有任何区别。
答案 0 :(得分:10)
假设您要紧接着$VARIABLE
"string"
echo "$VARIABLEstring" # tries to print the variable called VARIABLEstring
echo "${VARIABLE}string" # prints $VARIABLE and then "string"
Bash还支持string manipulation使用此语法。
答案 1 :(得分:3)
您可能希望这样做的一个原因是{}
充当分隔符:
a=42
echo "${a}sdf" # 42sdf
echo "$asdf" # prints nothing because there's no variable $asdf
答案 2 :(得分:2)
此功能通常用于保护变量名称不受周围字符的影响。
$ var=foo
如果我们希望在$var
末尾连接一个字符串,我们不能这样做:
$ echo $varbar
$
因为这是尝试使用新变量$varbar
。我们需要将var
括在{}
中作为:
$ echo ${var}bar
foobar