以这种方式回应变量的区别是什么?

时间:2011-10-29 18:20:59

标签: bash shell scripting

在bash脚本中回显这些变量有什么不同?

实施例

我声明了一个变量

VARIABLE="Hello World"

echo $VARIABLE

上面和下面的内容之间有什么区别?

echo ${VARIABLE}

如果我放{}或不是,它会有所作为吗?

1 个答案:

答案 0 :(得分:4)

您的代码没有区别

花括号,分隔变量名称用于parameter expansion,所以你可以做像

这样的事情

截断变量'content

$ var="abcde"; echo ${var%e*}
abcd

使替换类似于sed

$ var="abcde"; echo ${var/e/1}
abcd1

在特定情况下进行扩展时,大括号也很有用。例如:

FOO=bar
echo $FOO1    # tries to print the value of a variable named "FOO1"
echo ${FOO}1  # prints "bar1"