Ada*_*tan 73 bash shell environment-variables process
有什么区别:
a=b
Run Code Online (Sandbox Code Playgroud)
和
export a=b
Run Code Online (Sandbox Code Playgroud)
在 bash 中?
我知道他们都定义了环境变量,但我不完全理解其中的区别。
Mik*_*aid 76
export 将变量传播到子进程。
例如,如果你做了
FOO=bar
Run Code Online (Sandbox Code Playgroud)
那么检查 FOO 的子进程将找不到该变量,而
export FOO=bar
Run Code Online (Sandbox Code Playgroud)
将允许子进程找到它。
但是,如果FOO有已经被定义为一个环境变量,然后FOO=bar将修改环境变量的值。
例如:
FOO=one # Not an environment variable
export FOO # Now FOO is an environment variable
FOO=two # Update the environment variable, so sub processes will see $FOO = "two"
Run Code Online (Sandbox Code Playgroud)
较旧的 shell 不支持该export FOO=bar语法;你必须写FOO=bar; export FOO。
| 归档时间: |
|
| 查看次数: |
9848 次 |
| 最近记录: |