查找环境变量的设置位置

查找环境变量的设置位置

http_proxy每当我启动一个新终端时,我的设置就会出现错误:

» echo $http_proxy 
http://http://127.0.0.1:1234/

这很糟糕。我的环境设置中有一个错误。让我们试着找到它。为此,我将在一开始就显示变量的值.bashrc。我创建一个新的终端,并且我已经看到了错误的值:

http_proxy=http://http://127.0.0.1:1234/
» 

好的,因此下列任一项必定为真:

  1. 桌面进程(启动终端的进程)已经导出了错误的值,
  2. 该值由设置bash .bashrc已解析

我来检查一下当前shell的父进程的环境:

» pstree -ahp myuser
...
  ├─gnome-terminal-,3807
  │   ├─bash,3814
  │   │   └─pstree,17329 -ahp myuser

让我们检查一下父进程的环境gnome-terminal

» cat /proc/3807/environ | tr \\0 \\n | grep -i http_proxy

什么也没有,什么也没有,什么也没有!

关于什么bash

» cat /proc/3814/environ | tr \\0 \\n | grep -i http_proxy
HTTP_PROXY=http://http://127.0.0.1:1234/
http_proxy=http://http://127.0.0.1:1234/

echo $http_proxy正如预期的那样,它就在那里(这当然相当于做,或者做cat /proc/self/environ

因此,它不在 中gnome-terminal,但它在 中bash。必须在加载时将其设置在其他地方bash .bashrc。我也尝试检查过.profile,但是没有成功。

之前可能发生了什么.bashrc?您还有其他什么调试想法?

相关内容