Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 为什么环境变量不是';t在单个命令中传递_Bash_Terminal_Environment Variables - Fatal编程技术网

Bash 为什么环境变量不是';t在单个命令中传递

Bash 为什么环境变量不是';t在单个命令中传递,bash,terminal,environment-variables,Bash,Terminal,Environment Variables,在bash中,我可以通过以下方式将环境变量传递给单个命令: KEY=VAL <command> 虽然这样做有效: KEY=VAL bash -c 'echo $KEY' i、 e.第一个打印一个空行,而另一个打印“VAL”。我希望两者都打印“VAL”。因为KEY=VAL echo$KEY没有echo展开$KEY变量 当前的shell在运行echo(或其他任何东西)之前正在执行此操作。我确信这是一个副本,我现在无法找到它。我希望如此,但也无法找到它! KEY=VAL bash -c

在bash中,我可以通过以下方式将环境变量传递给单个命令:

KEY=VAL <command>
虽然这样做有效:

KEY=VAL bash -c 'echo $KEY'

i、 e.第一个打印一个空行,而另一个打印“VAL”。我希望两者都打印“VAL”。

因为
KEY=VAL echo$KEY
没有
echo
展开
$KEY
变量


当前的shell在运行
echo
(或其他任何东西)之前正在执行此操作。

我确信这是一个副本,我现在无法找到它。我希望如此,但也无法找到它!
KEY=VAL bash -c 'echo $KEY'