如果我在终端输入
export DISPLAY=:0.0
... shell在哪里存储该环境变量?
我正在使用Ubuntu 8.10。我查看了文件〜/ .profile和/ etc / profile,找不到DISPLAY的痕迹。
Answers:
进程的环境变量在运行时存在,并且未存储在某些文件中。它们存储在进程自己的内存中(在那里,它们会传递给子进程)。但是其中有一个虚拟文件
/ proc / pid /环境
该文件显示了在调用进程时传递的所有环境变量(除非该进程覆盖了其内存的那部分-大多数程序不会)。内核使它们通过该虚拟文件可见。一个可以列出他们。例如,要查看过程3940的变量,可以执行
cat /proc/3940/environ | tr '\0' '\n'
每个变量都由下一个变量用二进制零定界。tr将零替换为换行符。
environ
如果环境变量以限定的方式改变文件代表错误的值?您也许可以展示一个利用它的程序吗?
如果要将环境在系统范围内使用,可以使用/etc/environment
文件。
该变量未存储在某些脚本中。它是由X服务器脚本简单设置的。您可以使用set检查当前设置的环境变量。