为什么 'export $Path=$Path:dir' 不起作用?

1 linux bash path environment-variables

我只是想知道为什么我们需要使用这个命令

export Path=$Path:dir
Run Code Online (Sandbox Code Playgroud)

为什么命令看起来不像

export $Path=$Path:dir/dir'
Run Code Online (Sandbox Code Playgroud)

小智 7

如果你这样做:

VAR=value
Run Code Online (Sandbox Code Playgroud)

bash 将 VAR 设置为“值”,如果变量不存在,则创建该变量。

如果你写:

$VAR=value
Run Code Online (Sandbox Code Playgroud)

然后 bash 执行此替换 $VAR 为其当前值。假设 $VAR 的值为 x,这将产生:

x=var
Run Code Online (Sandbox Code Playgroud)

作为要执行的命令。这就是为什么它说“找不到命令”

但是,可以通过以下方式告诉 bash 重新解释eval

VAR2=x
VAR=VAR2
echo $VAR2
x

eval $VAR=y
echo $VAR2
y
Run Code Online (Sandbox Code Playgroud)