该env
命令可用于打印 bash 中的环境变量。我想问一下是否有任何内置命令可以做到这一点?
$ export temp="hello world"
$ env | grep temp
第二个命令确实会打印temp's
值,但那是因为它在env
生成时作为环境继承。我想检查 bash shell 进程最初拥有哪些环境变量,其中temp
仍然不是环境的一部分,但只是标记为导出为任何子进程的环境(我想测试一下)。
答案1
你是对的。当在 shell 中导出或声明变量时,该变量是不是添加到 shell 的环境中(即更新文件 - 请阅读下文)。
您可以通过查看文件 来查看 shell(或任何其他进程)在 Linux 上调用时所具有的环境变量/proc/PID/environ
,其中PID
是您要分析的进程的 PID。变量以经典形式保存var=value
并用空字符分隔。