macOS 系统偏好设置中设置代理对于终端是无效的。如何在终端中使用代理呢?

export all_proxy=socks5://ip:port

如果需要远端解析 DNS,那么需要写成(适用于 curl)

export all_proxy=socks5h://ip:port

取消代理

unset all_proxy

上面是 socks5 代理的设置方法,也可以设定或者取消 http 代理。

export http_proxy=http://your.proxy.ip.addr:port
export https_proxy=https://your.proxy.ip.addr:port

unset http_proxy
unset https_proxy

然而,并不是所有的应用都读去 all_proxy 这个环境变量,比如 git。git 的代理需要单独设置。

# 设置
git config --global http.proxy "socks5://ip:port"
git config --global https.proxy "socks5://ip:port"
# 取消设置
git config --global --unset http.proxy
git config --global --unset https.proxy

或者直接编辑 ~/.gitconfig 文件

老张说:

macOS 已经用 zsh 取代了 bash 作为默认 shell。上面的命令适用于 zsh。你可以在你的.zshrc 中加入下面两行:

alias proxy='export all_proxy=socks5h://ip:port'
alias unproxy='unset all_proxy'

你需要将ip:port改成你自己的socks5代理的地址和端口。
如果需要立即生效,请打开新的终端或者在当前终端输入下面的命令:
source ~/.zshrc
这样你就可以在终端通过 proxy,unproxy 来启用,取消代理了。

支持我们

如果您喜欢这篇文章,您可以分享给您的朋友,分享到您的社交账号比如:

或者 点击这个链接 观看广告支持我【广告内容与我们无关,请不要轻易相信并打开弹出的广告】。
若您经济宽裕,更欢迎通过下面的方式小额赞助以支持我们的创作。