本文主要是为 powershell、cmd 等 windows 终端设置代理
封面《LAMUNATION!》

前言

在 powershell 中使用一些工具下载外网资源的时候经常会碰到一些网络问题。这些时候往往设置一下 VPN 的代理模式为全局代理即可。但往往有些时候设置全局代理也没用,亦或者一时没法切换代理模式(比如 Chrome 下载一些资源的时候),这些时候就需要设置 powershell 的代理了。

powershell 设置代理

查看代理

1
netsh winhttp show proxy

可以虽然我设置了 VPN(非全局模式),但是其依然显示直接连接

设置代理

1
2
3
4
5
# 需要管理员权限
# 否则 Error writing proxy settings. (5) Access is denied.
netsh winhttp set proxy 127.0.0.1:41091
# or
netsh winhttp import proxy source=ie

下面这个不用管理员权限也可,不过无法直接查看。第一次遇见是在 vcpkg 中使用

1
2
$env:HTTP_PROXY="http://127.0.0.1:41091"
$env:HTTPS_PROXY="https://127.0.0.1:41091"

取消代理

1
netsh winhttp reset proxy

参考文献

Using PowerShell Behind a Proxy Server

Windows 为 cmd/powershell 设置代理