在Windows系统中,命令行代理配置主要通过设置环境变量实现,适用于命令行工具(如curl、wget、git、npm等)的网络请求场景,以下是详细配置步骤及注意事项。

代理类型与环境变量
Windows命令行代理主要支持HTTP、HTTPS和SOCKS5代理,需通过以下环境变量配置:
HTTP_PROXY:HTTP代理地址,格式为http://host:port或http://username:password@host:port。HTTPS_PROXY:HTTPS代理地址,格式同上。ALL_PROXY:默认代理地址,当未单独设置HTTP/HTTPS代理时生效。NO_PROXY:排除代理的地址列表,用逗号分隔,如localhost,127.0.0.1,*.local。
临时配置(当前命令行窗口生效)
-
设置代理:
set HTTP_PROXY=http://127.0.0.1:7890 set HTTPS_PROXY=http://127.0.0.1:7890 set ALL_PROXY=socks5://127.0.0.1:7891 set NO_PROXY=localhost,127.0.0.1
- 说明:
set命令仅在当前窗口有效,关闭后失效。
- 说明:
-
取消代理:
set HTTP_PROXY= set HTTPS_PROXY= set ALL_PROXY= set NO_PROXY=
永久配置(所有新窗口生效)
通过系统环境变量设置:

- 按
Win+R输入sysdm.cpl,进入“系统属性”→“高级”→“环境变量”。 - 在“系统变量”中新建或修改以下变量:
- 变量名:
HTTP_PROXY,值:http://127.0.0.1:7890 - 变量名:
HTTPS_PROXY,值:http://127.0.0.1:7890 - 变量名:
NO_PROXY,值:localhost,127.0.0.1
- 变量名:
- 重启命令行工具或电脑使配置生效。
常见工具代理配置示例
| 工具名 | 配置命令 |
|---|---|
| Git | git config --global http.proxy http://127.0.0.1:7890 |
| npm | npm config set proxy http://127.0.0.1:7890 |
| pip | pip config set global.proxy http://127.0.0.1:7890 |
| curl | 直接使用环境变量,或命令行参数:curl -x http://127.0.0.1:7890 http://example.com |
注意事项
- 认证代理:若代理需要用户名和密码,格式为
http://user:pass@host:port。 - SOCKS5代理:部分工具(如Git)需额外支持,可通过
git config --global core.socks5Proxy 127.0.0.1:7891配置。 - 验证配置:使用
curl -v http://httpbin.org/ip测试代理是否生效,返回IP应为代理服务器IP。 - 冲突处理:若工具自带代理配置(如Git),环境变量可能被覆盖,需优先检查工具配置。
相关问答FAQs
Q1:为什么设置了环境变量后,某些工具(如Git)仍不使用代理?
A1:部分工具(如Git、npm)有独立的代理配置系统,环境变量可能不生效,需通过工具专用命令配置,例如Git需运行git config --global http.proxy,而非依赖系统环境变量,检查工具是否支持代理协议(如Git不支持SOCKS5,需使用HTTP代理)。
Q2:如何临时禁用所有命令行代理?
A2:可通过两种方式实现:
- 临时禁用:在命令行窗口中执行
set HTTP_PROXY=和set HTTPS_PROXY=,仅对当前窗口有效。 - 全局禁用:进入系统环境变量,删除或清空
HTTP_PROXY、HTTPS_PROXY等变量,并重启命令行工具,若需频繁切换,建议编写批处理文件(如enable_proxy.bat和disable_proxy.bat)快速切换配置。

