Unix中的Export命令

Unix中的Export命令,unix,export,Unix,Export,我是Unix新手,我知道export命令可用于创建会话变量,但下面这个命令的用途是什么: bash-3.2$ export $TEST declare -x PWD="/home/username" declare -x SHELL="/bin/bash" declare -x SSH_TTY="/dev/pts/4" declare -x USER="username" 请帮助我理解这个命令。我没有任何名为TEST的变量,但当我发出此命令时,shell打印了一些输出。shell将不存在的变量

我是Unix新手,我知道
export
命令可用于创建会话变量,但下面这个命令的用途是什么:

bash-3.2$ export $TEST
declare -x PWD="/home/username"
declare -x SHELL="/bin/bash"
declare -x SSH_TTY="/dev/pts/4"
declare -x USER="username"

请帮助我理解这个命令。我没有任何名为TEST的变量,但当我发出此命令时,shell打印了一些输出。

shell将不存在的变量
$TEST
扩展为空字符串,然后运行命令
export
,不带任何参数。执行此操作时,shell将列出导出的环境变量

如果要导出空变量测试,应编写以下任意代码:

export TEST
export TEST=
export TEST=''
export TEST=""
(在这种情况下,还有其他方法可以达到相同的效果,例如
导出测试=$TEST
或者,或多或少地,
导出测试=“$TEST”
,但通常缩写为
导出测试

输出中详细的
declare-x
符号用于将输出写入文件,然后使用
(dot)或
命令重新加载环境。不同的shell以不同的方式呈现输出,不一定是可重用的

set
命令类似(但更复杂)。它可以用来设置shell选项,设置位置参数(
$1
$2
,等等),但在没有参数的情况下运行时,它会列出设置的变量。请注意,并不是创建的每个变量都是导出的环境变量。

可能的重复项