mac终端临时代理设置为当前窗口生效,执行export http_proxy=http://127.0.0.1:7890 && export https_proxy=http://127.0.0.1:7890;永久代理需编辑~/.zshrc(zsh)或~/.bash_profile(bash),添加http_proxy、https_proxy和all_proxy三变量并source生效,最后用env | grep -i proxy和curl -v验证。

Mac终端需要走代理才能访问被限制的网站或内部服务,比如调用海外API、拉取私有Git仓库、下载npm包,不设代理会直接报错超时或拒绝连接。
临时设置终端代理(当前窗口生效)
这一步操作起来很简单,直接在终端里敲命令就行,关掉窗口就自动失效,适合测试代理是否通、临时查资料或跑一次脚本。
输入命令:export http_proxy=http://127.0.0.1:7890 && export https_proxy=http://127.0.0.1:7890,把127.0.0.1:7890替换成你本地代理软件实际监听的地址和端口(比如ClashX默认是7890,Surge可能是6000)。
如果代理支持SOCKS5协议,也可以改用:export all_proxy=socks5://127.0.0.1:7891,注意all_proxy变量能同时覆盖http/https/ftp等所有协议请求。
⚠️别漏掉https_proxy——只设http_proxy会导致curl、git、pip等工具发起HTTPS请求时仍直连失败。
永久设置终端代理(每次新开终端都自动生效)
macOS 12(Monterey)及之后版本默认使用zsh,配置文件是~/.zshrc;如果你手动切回bash,则要改~/.bash_profile。改错文件会导致代理永远不生效。
第一步:用nano打开配置文件 → nano ~/.zshrc
第二步:滚动到文件末尾,新增三行(注意替换为你自己的代理地址):export http_proxy=http://127.0.0.1:7890export https_proxy=http://127.0.0.1:7890export all_proxy=socks5://127.0.0.1:7891
第三步:按Ctrl+O保存 → 回车确认文件名 → Ctrl+X退出编辑器。
第四步:立即启用新配置 → source ~/.zshrc。这步不能跳过,否则新开终端才生效,当前窗口还是没代理。
【务必确认你用的是zsh】——运行echo $SHELL,输出/bin/zsh才算对;如果是/bin/bash,就得把上面所有.zshrc换成.bash_profile。
验证代理是否真正生效
方法一:检查环境变量是否写入成功 → env | grep -i proxy,能看到刚设置的三个变量值才算落进去了。
方法二:实测网络请求 → curl -v https://ipinfo.io/ip 2>&1 | grep "Connected to",输出里显示连接到了你的代理IP(比如127.0.0.1),而不是目标网站的真实IP,说明流量已走代理通道。
方法三:快速对比直连与代理差异 → 先执行unset http_proxy https_proxy all_proxy,再跑一遍curl https://ipinfo.io/ip,记下返回的IP;然后重新source ~/.zshrc,再跑一次,两次IP不同即证明代理切换成功。











