我一直在使用npm和git代理问题。
看起来代理在Bash中被设置为环境变量
如果我查看
env | grep -i proxy
我可以看到代理设置。
我可以用
取消设置代理unset http_proxy
unset https_proxy
unset ftp_proxy
只要终端窗口打开,这似乎只会持续。
如果我关闭并重新打开终端,代理又会回来。
当我不在办公室时是否可以删除代理,然后在需要时重新创建代理?
答案 0 :(得分:1)
您首先需要找出在您的案例中定义这些环境变量的位置。
通常,它们设置在~/.bash_profile
文件(Mac OS X)或~/.bashrc
文件(Linux)中。由于您使用osx
标记了问题,因此我认为在您的情况下,它们已设置为~/.bash_profile
。
请检查此文件是否定义了这些变量。您可以使用Finder(您需要显示隐藏文件)或通过运行cat ~/.bash_profile
从终端执行此操作。随意在您的问题中发布输出。
在/etc/bashrc
等系统范围的文件中定义它们的可能性很小。也可以随意查看该文件。
如果您需要定期定义/取消定义变量,我建议您为每个定义/取消定义创建一个脚本,并将其放在~/bin
之类的位置。然后,您可以在打开新shell时调用相应的脚本。
我通过 Bash-it 框架处理这个问题。在我的fork中,我添加了一个代理插件,为此提供了功能。请随意尝试:https://github.com/nwinkler/bash-it/blob/master/plugins/available/proxy.plugin.bash
回答你的另一个问题:从shell窗口自动检测和更改代理的存在并不容易。