OSX 下面用 networksetup 切换代理

2014-12-31 14:22:38 +08:00
 cattyhouse
今天研究了一下bash的functions,然后做了一个切换代理的命令。之前用过ProxyMenu,各种问题。。。
将以下加入 ~/.bashrc or ~/.zshrc , 然后source ~/.zshrc or ~/.bashrc 然后就能开关proxy了。
如果你们用有线网络的话,先list一下网络名称,然后做相应替换
networksetup -listallnetworkservices

proxyoff () {
sudo networksetup -setwebproxystate Wi-Fi off
sudo networksetup -setsocksfirewallproxystate Wi-Fi off
sudo networksetup -setautoproxystate Wi-Fi off
}

proxyauto () {
sudo networksetup -setautoproxystate Wi-Fi on
sudo networksetup -setautoproxyurl Wi-Fi http://127.0.0.1/~justin/auto
}

proxyhttp () {
sudo networksetup -setwebproxystate Wi-Fi on
sudo networksetup -setwebproxy Wi-Fi 127.0.0.1 8888
}

proxysocks () {
sudo networksetup -setsocksfirewallproxystate Wi-Fi on
sudo networksetup -setsocksfirewallproxy Wi-Fi 127.0.0.1 9999
}


具体就是打开terminal,proxyoff,先关闭所有代理,然后proxyauto开启自动代理。其他同理。
5494 次点击
所在节点    macOS
5 条回复
mxi1
2015-01-01 11:03:05 +08:00
设置以后的代理是全局的代理么,是不是浏览器、Terminal和其他的任意应用程序都可以使用?
cattyhouse
2015-01-01 11:09:15 +08:00
@mxi1 大部分可用,terminal显然不能用。
YY
2015-01-02 19:27:49 +08:00
修改一下,proxyauto proxyhttp proxysocks 第一句都调用proxyoff, 这样方便点
YY
2015-01-02 19:36:23 +08:00
@YY 还有一个修改一下sudoers 让networksetup不用输入密码
cattyhouse
2015-01-02 20:20:10 +08:00
@YY 这样反而比较负责,一般执行两个命令就可以了:
proxyoff;proxyauto
或者
proxyoff;proxyhttp
或者
proxyoff;proxysocks

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/158198

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX