iTerm2下使用命令行代理

  在使用ss、v2ray等fq时,并不能在命令行进行代理。但我们实际使用时可能会经常在命令行下通过brew安装应用或者clone代码到本地。不使用代理会非常慢,有些时候github完全访问不了,代码都拉不下来。
  如果在命令行下使用代理的话,上诉问题能够得到一定程度解决。如果你会搭建软路由的话,直接使用即可,无需额外配置。如果不会或者不想折腾可以直接通过在命令行配置代理的方式实现。

  这里以ss为例,在.zshrc中键入以下命令,保存,source执行以下该文件或重启iTerm。

// 这里的代理地址需要修改为自己的,一般为http://127.0.0.1
// 端口可能不同,需要查看ss设置
export proxyon=Socks5://127.0.0.1:1087

  然后查看代理是否生效:

// 输入
curl ip.gs
// 输出
Current IP / 当前 IP: xxx.xxx.xxx.xxx
ISP / 运营商:  xxxxxxxx
City / 城市:  xxxxxx
Country / 国家: xxxx
IP.GS is now IP.SB, please visit https://ip.sb/ for more information. / IP.GS 已更改为 IP.SB ,请访问 https://ip.sb/ 获取更详细 IP 信息!
Please join Telegram group https://t.me/sbfans if you have any issues. / 如有问题,请加入 Telegram 群 https://t.me/sbfans

  为了方便使用,我们使用函数给它添加上开启提示,以及测试ip。在.zshrc输入以下内容,保存,source执行该文件。

proxyon () {
    export http_proxy=Socks5://127.0.0.1:1086
    export https_proxy=Socks5://127.0.0.1:1086
    echo "http/https proxy on."
    curl ip.gs
}

proxyoff () {
    unset http_proxy
    unset https_proxy
    echo "http/https proxy off."
    curl ip.gs
}

  使用命令proxyonproxyoff即可在当前终端开启和关闭代理。