我使用的是 Mac OS,有时需要使用代理来完成一些工作,因此我需要经常更改代理设置。但在“系统偏好设置”中更改代理设置非常麻烦。
有没有办法使用命令行更改代理设置?使用 shell 命令或某些工具?
答案1
编辑:我假设你实际上指的是 Mac OS X,而不是 Mac OS。
您可以使用命令行工具“networksetup”
有一个它的手册页-networksetup(8)
man networksetup
您将在其中找到许多代理设置选项:
[-setftpproxy networkservice domain portnumber authenticated username password]
[-setftpproxystate networkservice on | off] [-getwebproxy networkservice]
[-setwebproxy networkservice domain portnumber authenticated username password]
[-setwebproxystate networkservice on | off] [-getsecurewebproxy networkservice]
[-setsecurewebproxy networkservice domain portnumber authenticated username password]
[-setsecurewebproxystate networkservice on | off] [-getstreamingproxy networkservice]
[-setstreamingproxy networkservice domain portnumber authenticated username password]
[-setstreamingproxystate networkservice on | off] [-getgopherproxy networkservice]
[-setgopherproxy networkservice domain portnumber authenticated username password]
[-setgopherproxystate networkservice on | off] [-getsocksfirewallproxy networkservice]
[-setsocksfirewallproxy networkservice domain portnumber authenticated username password]
[-setsocksfirewallproxystate networkservice on | off] [-getproxybypassdomains networkservice]
[-setproxybypassdomains networkservice domain1 [domain2] [...]] [-getpassiveftp networkservice]
或者,如果您只需要为 wget 或 curl 之类的设置代理,那么您可以使用相当通用的“http_proxy”和“ftp_proxy”环境变量。
例如在bash中:
export http_proxy=http://my.proxy.com:1234
其中“1234”是端口号。
干杯
sc.
答案2
使用 networksetup 设置代理:(在networksetup -listallnetworkservices
此之前请检查可用的适配器)
networksetup -setwebproxy "Wi-fi" 127.0.0.1 8080
如果需要,您可以使用以下语法设置身份验证:[-setwebproxy 网络服务 域 端口号 验证用户名 密码]
打开或关闭代理:
networksetup -setwebproxystate "Wi-fi" off
查看代理状态:
networksetup -getwebproxy "Wi-Fi"
答案3
扩展瑞士芝士ssh -D
针对SOCKS5代理的具体情况(即用、shadowsocks、v2ray等生成的类型)的回答。
假设您使用例如配置了代理服务器
networksetup -setsocksfirewallproxy wi-fi localhost 1080
答案4
创建无代理网络环境:在“系统偏好设置”的“网络”面板中,单击“配置文件”下拉菜单并选择“管理配置文件…”。复制您的标准设置(通过单击列表底部的齿轮按钮)。为复制的配置文件指定一个唯一的名称(例如“Proxyless”)。在该配置文件的设置中禁用所有代理。
为新配置文件分配键盘快捷键:在“系统偏好设置”的“键盘”面板中,为“所有应用程序”创建一个新的应用程序快捷键。将其命名为您的配置文件的名称(即“Proxyless”),然后添加快捷方式。
一旦您切换应用程序至少一次,快捷方式就会被激活(当您仍处于系统偏好设置中时它不会处于活动状态)。