Dom*_*ick 3 bash zsh environment-variables zshrc oh-my-zsh
您是否需要在 Bash 配置文件/zshrc 中包含环境变量的导出?
我的终端使用 Z shell (Zsh),在我的.zshrc
文件中我有两行:
varOne="foo"
export varTwo="bar"
Run Code Online (Sandbox Code Playgroud)
echo $varOne
当我在终端内回显任一变量(例如:)时,会输出正确的值。
export
那么在文件内部添加环境变量声明前缀有什么区别吗.zshrc
?
那么,在 .zshrc 文件中为环境变量声明加上 export 前缀有什么区别吗?
是的,一个是环境变量,另一个不是。
这种差异对于您的shell来说并不重要,但对于您的 shell 启动的进程来说却很重要。环境变量由子进程继承,而常规 shell 变量则不然。
~ % foo=3; printenv foo
~ % export foo=3; printenv foo
3
Run Code Online (Sandbox Code Playgroud)
在第一种情况下,在其printenv
环境中没有命名的变量;在第二种情况下,确实如此。foo