【发布时间】:2015-03-22 19:17:57
【问题描述】:
我需要能够将变量扩展为它的声明字符串,而不是像通常那样在其声明中扩展其他变量。
variable=word
var="this variable contains a $variable"
echo ????
我需要一个导致:“this variable contains a $variable”的命令
...而不是:“this variable contains a word”
变量声明必须保持不变,因为它需要在所有其他情况下正常展开。所以我不能在声明中使用单引号。
【问题讨论】:
-
只使用单引号对你有用吗,或者你有一个脚本中的变量已经用双引号括起来了吗?
-
@RayToal 很遗憾,不,我无法更改变量声明。更新了问题以反映这一点。
-
这是不可能的。当您执行
var="blah blah blah $variable",$variable` 时,在分配给var之前会展开。 (您可以很容易地看到这一点;更改variable的值不会影响var。)。
标签: linux bash variables scripting variable-expansion