Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.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 linux环境变量设置消失_Bash_Environment Variables - Fatal编程技术网

Bash linux环境变量设置消失

Bash linux环境变量设置消失,bash,environment-variables,Bash,Environment Variables,我有以下bash脚本: #!/bin/bash export PYCACHED_HOST='localhost' export PYCACHED_PORT=8001 echo "PyCached environment variables set to: PYCACHED_HOST=`echo $PYCACHED_HOST`, PYCACHED_PORT=`echo $PYCACHED_PORT`" 运行时,将打印以下输出: PyCached environment variables set

我有以下bash脚本:

#!/bin/bash
export PYCACHED_HOST='localhost'
export PYCACHED_PORT=8001
echo "PyCached environment variables set to: PYCACHED_HOST=`echo $PYCACHED_HOST`, PYCACHED_PORT=`echo $PYCACHED_PORT`"
运行时,将打印以下输出:

PyCached environment variables set to: PYCACHED_HOST=localhost, PYCACHED_PORT=8001
当我再次运行同一条回音线时:

echo "PyCached environment variables set to: PYCACHED_HOST=`echo $PYCACHED_HOST`, PYCACHED_PORT=`echo $PYCACHED_PORT`"
我得到:

PyCached environment variables set to: PYCACHED_HOST=, PYCACHED_PORT=
我知道环境变量是为脚本上下文设置的,但是在脚本执行结束后,我该怎么做才能使它们可用呢

脚本执行结束后,我可以做些什么使它们可用?

运行您的脚本作为

source ./script.sh

这将在当前shell中运行脚本,而不创建新进程,因此在脚本结束后,env变量将在当前shell中可用

脚本执行结束后,我可以做些什么使它们可用?

运行您的脚本作为

source ./script.sh


这将在当前shell中运行脚本,而不创建新进程,因此在脚本结束后,当前shell中将提供环境变量。

如果您不时需要环境变量,可以在
.bashrc
文件中设置它们。它是一个隐藏文件,通常位于主目录中。它在打开任何shell提示符之前执行

如果您不时需要env变量,可以在
.bashrc
文件中设置它们。它是一个隐藏文件,通常位于主目录中。它在打开任何shell提示符之前执行

这是解决方案,工作完美!PS
源代码
和附加点语法之间有语义差异吗?完全一样吗?是的,它们实际上都一样。点是一种快捷语法。这是一种解决方案,非常有效!PS
源代码
和附加点语法之间有语义差异吗?完全一样吗?是的,它们实际上都一样。点是快捷语法。