MacOS代理分为桌面应用代理设置&Terminal代理设置,使用代理软件默认只会开启桌面应用代理,Terminal代理需要单独配置
 
桌面应用代理设置
Terminal查看桌面应用代理设置情况
scutil --proxy
返回内容(0表示未开启,1表示已开启,ExceptionsList 表示无需代理的地址列表)
<dictionary> {
HTTPEnable : 0
HTTPSEnable : 0
ProxyAutoConfigEnable : 0
SOCKSEnable : 0
}
 
<dictionary> {
ExceptionsList : <array> {
0 : 127.0.0.1
}
SOCKSEnable : 1
SOCKSPort : 1086
SOCKSProxy : 127.0.0.1
}
 
 图形界面设置

Terminal代理设置(端口地址请根据实际情况修改)
 
临时使用代理(仅针对当前打开的Terminal窗口)
export http_proxy="http://127.0.0.1:1080"
export https_proxy="http://127.0.0.1:1080"
export all_proxy="socks5://127.0.0.1:1086"
 
永久使用代理(针对所有打开的Terminal窗口)
 
bash(配置~/.bash_profile)
在~/.bash_profile追加代理参数配置
echo export http_proxy="http://127.0.0.1:1080" >> ~/.bash_profile
echo export https_proxy="http://127.0.0.1:1080" >> ~/.bash_profile
echo export all_proxy="socks5://127.0.0.1:1086" >> ~/.bash_profile
使代理参数配置立即生效
source ~/.bash_profile
 
zsh(配置~/.zshrc)
在~/.zshrc追加代理参数配置
echo export http_proxy="http://127.0.0.1:1080" >> ~/.zshrc
echo export https_proxy="http://127.0.0.1:1080" >> ~/.zshrc
echo export all_proxy="socks5://127.0.0.1:1086" >> ~/.zshrc
使代理参数配置立即生效
source ~/.zshrc
 
测试代理是否成功(不能通过ping检测,ping不会走代理)
代理成功输出内容包含
status: 200 OK
代理失败输出内容
curl: (7) Failed to connect to 127.0.0.1 port 1080: Connection refused
 
查看当前代理参数配置
echo $http_proxy;
echo $https_proxy;
echo $all_proxy;
 
全局代理下自动设置Terminal脚本(注意:一定要先打开代理模式,而且必须是全局代理模式,再打开Terminal)
在~/.zshrc添加下列内容
export http_proxy=`scutil --proxy | awk '\
/HTTPEnable/ { enabled = $3; } \
/HTTPProxy/ { server = $3; } \
/HTTPPort/ { port = $3; } \
END { if (enabled == "1") { print "http://" server ":" port; } }'`
export http_proxy="${http_proxy}"
 
export all_proxy=`scutil --proxy | awk '\
/SOCKSEnable/ { enabled = $3; } \
/SOCKSProxy/ { server = $3; } \
/SOCKSPort/ { port = $3; } \
END { if (enabled == "1") { print "socks5://" server ":" port; } }'`
export all_proxy="${all_proxy}"
使配置立即生效
source ~/.zshrc
 
参考链接
https://www.cnblogs.com/DeviLeo/p/5798255.html(MacOS X Terminal中设置代理)
https://blog.kelu.org/tech/2017/06/19/setting-socks5-proxy.html(设置 socks5/http 代理,可用于git和shell终端)
https://www.hi-linux.com/posts/48321.html(通过 ProxyChains-NG 实现终端下任意应用代理)
http://www.voidcn.com/article/p-xtdshbdf-mc.html(Mac 为 Homebrew 设置代理)
 
 
 
 
 

MacOS代理设置(桌面应用代理设置&Terminal代理设置)的更多相关文章

  1. HttpWebRequest提高效率之连接数,代理,自动跳转,gzip请求等设置问题

    先设置4个: [csharp] webrequest.ServicePoint.Expect100Continue = false; //是否使用 Nagle 不使用 提高效率 webrequest. ...

  2. 如果nginx 中worker_connections 值设置是1024,worker_processes 值设置是4,按反向代理模式下最大连接数的理论计算公式: 最大连接数 = worker_processes * worker_connections/4

    如果nginx 中worker_connections 值设置是1024,worker_processes 值设置是4,按反向代理模式下最大连接数的理论计算公式: 最大连接数 = worker_pro ...

  3. 写了一个Mac快速设置、打开和关闭Web代理的Shell命令

    缘由(痛点) 每次在Mac上设置Web代理,都需要点开"系统偏好设置 -- 网络 -- 高级 -- 代理",然后分别设置Web代理(HTTP)和安全Web代理(HTTPS),设置完 ...

  4. [Fedora 20] 设置Terminal快捷键 + 设置桌面快捷方式 + Terminal透明解决方案

    一.设置Terminal快捷键 刚安装Fedora的时候,习惯性的按Ctrl+Alt+T可是终端怎么都不出来,这才意识到Fedora和Ubuntu是不一样的,于是自己设置快捷键 1.进入All set ...

  5. SqlServer 更改复制代理配置文件参数及两种冲突策略设置

    原文:SqlServer 更改复制代理配置文件参数及两种冲突策略设置 由于经常需要同步测试并更改代理配置文件属性,所以总结成脚本,方便测试. 可更新订阅的冲突策略有两种情况:一是在发布中冲突,即订阅数 ...

  6. Win10家庭版设置桌面右键更换桌面壁纸

    Win10家庭版设置桌面右键更换桌面壁纸.. ------------------------- 这是设置之前的右键快捷菜单.. ------------------------- 开始设置:右键桌面 ...

  7. macos下mongoDB 3.4.5 添加用户、设置权限

    macos下mongoDB 3.4.5 添加用户.设置权限   在项目中需要根据项目运行环境访问,以不同的身份访问各自的db,所以研究了一下MongoDB的 需求: 给MongoDB添加两个用户分别用 ...

  8. win10 常用设置 桌面出来计算机图标,固定桌面摆好的图标设置方法,电脑设备ID方法

    win10 常用设置 桌面出来计算机图标,固定桌面摆好的图标设置方法 桌面右键-->显示设置-->桌面图标设置 电脑设备ID:xxx查看方法:桌面右键-->显示设置-->关于

  9. python实现抓取必应图片设置桌面

    源码参考https://github.com/vbirds/pyWallpaper,代码风格不错 本人只是将其适配到python3.5,并消除一些bug,源代码中桌面地址未使用绝对路径导致win10 ...

随机推荐

  1. HYSBZ 1015/BZOJ1015 星球大战starwar

    Description 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球.这些星球通过 ...

  2. SSM-6nginx Linux下的安装

    1.下载nginx: 官方网站: http://nginx.org/download/ 2. 要求的安装环境 yum install gcc-c++ yum -y install pcre-devel ...

  3. Sublime svn 安装

    Ctrl + Shift + P  进入 install package 输入svn windows系统选择:TortoiseSVN (在此之前,请确保电脑上已经安装好了TortoiseSVN) li ...

  4. GIT → 00:GIT学习大纲

    1. 学习版本控制的原因 1.1 没有版本控制出现的问题 1.2 版本控制的简介 1.3 版本控制工具 2. Git 和 Svn 比较 2.1 SVN介绍 2.1.1 SVN简介 2.1.2 SVN基 ...

  5. GIT → 11:Git 工作流与实战演练

    GIT → 11:Git 工作流与实战演练

  6. 学习线程池源码--ThreadPoolExecutor

    1 创建ThreadPoolExecutor ThreadPollExecutor有四个构造函数,但本质上都是调用这一个构造函数. public ThreadPoolExecutor(int core ...

  7. 学习JDK1.8集合源码之--WeakHashMap

    1. WeakHashMap简介 WeakHashMap继承自AbstractMap,实现了Map接口. 和HashMap一样,WeakHashMap也是一种以key-value键值对的形式进行数据的 ...

  8. pstree进程管理

    功能:pstree命令列出当前的进程,以及它们的树状结构. 格式:pstree [选项] [pid|user] 主要选项如下: -a:显示执行程序的命令与完整参数. -c:取消同名程序,合并显示. - ...

  9. 将自己的代码托管到github - 秦时明月 - CSDN博客

    步骤: 1.建立自己的github 2.安装github客户端,并配置身份 3.建立github项目 4.将github项目库下载到本地 5.提交本地代码到github 详细操作: 1.github网 ...

  10. cf round480D Perfect Groups

    题意:给一个序列,对于每一个连续的区间,区间内的数至少分成几个组,使得每个组内的数任意2个相乘是一个完全平方数(包括0). 输出每个组数的个数. $n \leq 5000 , |a_i| \leq 1 ...