Bash - 将现有变量值分配给新变量。新变量值不 return 赋值

Bash - Assigning existing Variable values to a New Variable. New Variable values does not return the assigned value

我想将现有变量的值分配给 Bash 脚本中的新变量。 问题在于,一旦新变量被分配给现有变量的值,它 returns none 而不是返回现有变量值。 (见下面的代码):

VAR1="Hello World"
VAR2="Let's concatenate"

VAR1+="$MyVar" # assigning to a new variable
echo "$VAR1"
echo "$MyVar" # This is the issue --> no value returned (intention is to return "Hello World")

此命令的输出 (echo "$MyVar") 是:

您没有定义名为 MyVar 的新变量。您正在将不存在的变量扩展产生的空字符串附加到 VAR1.

的值

你想要

MyVar=$VAR1

获得想要的结果。


+=的例子:

$ x=foo
$ echo "$x"
foo
$ x+=bar
$ echo "$x"
foobar