我想知道是否有办法从 bash 进程设置环境变量并从另一个进程读取它。
由于环境变量的值对于进程来说是本地的(除了继承),因此不能只export FOO="bar"
在终端中执行并从另一个终端中读取它。然后我试图让他们通过/proc/environ
,但这就是我得到的:
etuardu@subranu:~$ FOO="foo" bash
etuardu@subranu:~$ strings /proc/$$/environ | grep FOO
FOO=foo
etuardu@subranu:~$ export FOO="bar"
etuardu@subranu:~$ strings /proc/$$/environ | grep FOO
FOO=foo
etuardu@subranu:~$ echo $FOO
bar
看来我可以得到该环境变量在进程开始时所具有的值。
它现在的价值如何?