告别繁琐set命令:在Windows PowerShell中优雅地管理网络代理设置

背景

习惯了 Linux 开发环境的同学,一定对 .bashrc.zshrc 中的 alias 功能爱不释手。特别是在拉取代码或下载依赖时,我们经常需要频繁切换代理环境。

在 Linux 中,我们通常会写两行 alias:

bash 复制代码
alias proxy_on="export https_proxy=127.0.0.1:7890 && export http_proxy=127.0.0.1:7890" 

alias proxy_off="unset http_proxy https_proxy

转到 Windows 开发后,每次手动敲 $env:HTTP_PROXY=... 非常麻烦。其实 PowerShell 也有类似的配置文件 $PROFILE,可以完美实现这个功能。

解决方案

1. 寻找并创建配置文件

PowerShell 的配置文件路径保存在变量 $PROFILE 中。

注意: 默认情况下该文件可能不存在。如果你直接用记事本打开可能会报错"找不到文件"。请在 PowerShell 中执行以下命令,它会自动检测,如果文件不存在就创建一个:

powershell 复制代码
notepad $PROFILE

2. 编写函数脚本

在打开的记事本中,粘贴以下代码。
注:这里使用了 Function(函数)而非 Alias,因为函数在 PowerShell 中处理参数和逻辑更灵活。

powershell 复制代码
function proxy_on {
    param([string]$Proxy = "http://127.0.0.1:7890")
    $env:HTTPS_PROXY = $Proxy
    $env:HTTP_PROXY  = $Proxy
    $env:NO_PROXY    = "localhost,127.0.0.1,::1"
    Write-Host "Proxy ON: $Proxy"
}

function proxy_off {
    Remove-Item Env:HTTPS_PROXY,Env:HTTP_PROXY,Env:NO_PROXY -ErrorAction SilentlyContinue
    Write-Host "Proxy OFF"
}

保存并关闭记事本。

3. 立即生效配置

回到 PowerShell 窗口,运行以下命令重载配置文件(或者直接重启终端):

powershell 复制代码
. $PROFILE

验证效果

现在你可以像在 Linux 里一样使用了。

开启代理

powershell 复制代码
(base) PS C:\Users\User> proxy_on
Proxy ON: http://127.0.0.1:7890

验证连接

推荐使用 Windows 自带的 curl.exe 进行测试(注意加上 .exe 避免使用 PowerShell 的别名,并使用 -I 查看头信息):

powershell 复制代码
curl.exe -I https://www.google.com

如果看到类似 HTTP/1.1 200 Connection established 的输出,说明配置成功!

关闭代理

powershell 复制代码
proxy_off

适用范围

这个设置是环境变量级别的,对以下工具非常有效:

  • Conda / Pip:Python 包下载加速。
  • Git:命令行 Git 操作(部分场景需单独配置 git config,但环境变量通常有效)。
  • Node.js (npm/yarn)
  • Curl / Wget 等命令行工具。

注意:这不会影响 Chrome/Edge 等浏览器的代理设置(浏览器通常走系统级代理)。

相关推荐
STQY燊桐启元(深圳)电子科技7 小时前
医疗精密电源散热方案:相变陶瓷片保障医疗设备长效稳定低干扰
大数据·网络·人工智能
星核0penstarry7 小时前
试一试用gr.Workflow把AI多步骤串联变成可视化画布
人工智能·python·ai作画·api·ai编程·工作流·api聚合平台
俊哥V7 小时前
每日 AI 研究简报 · 2026-08-29
人工智能·ai
wangchunyu1147 小时前
MetaGPT介绍和安装说明
人工智能
小猴子爱上树8 小时前
跨境电商翻译工具推荐:批量图片翻译、视频字幕翻译、智能抠图一站式搞定
人工智能·python·音视频
冬奇Lab8 小时前
Code Agent 解剖(14):Harness 设计之四——容错与恢复
人工智能·开源
冬奇Lab8 小时前
一天一个开源项目(第202篇):Needle 2 - 14MB 的端侧工具调用模型
人工智能·开源·资讯
林澈在路上8 小时前
AI翻唱软件哪个好 2026国产AI写歌工具对比推荐
大数据·人工智能·深度学习·github·aigc·音视频·音频
咖啡星人k8 小时前
2026 MCP 模型上下文协议:让 AI 自己动手接工具,告别手写接口(MonkeyCode 实战)
人工智能·深度学习·机器学习·语言模型·自然语言处理
yyuuuzz8 小时前
记一次 VPS 性能排查:共享 CPU 突发额度导致的限流
运维·服务器·人工智能