【CMD、PowerShell和Bash设置代理】

【CMD、PowerShell和Bash设置代理】

1. CMD(命令提示符)

在 Windows 的命令提示符(CMD)中设置代理,可以使用 set 命令临时设置,或者使用 setx 命令永久设置环境变量。

临时设置代理(只对当前会话有效):

cmd 复制代码
set http_proxy=http://127.0.0.1:10809
set https_proxy=http://127.0.0.1:10809

查看当前代理设置:

cmd 复制代码
echo %http_proxy%
echo %https_proxy%

清除临时代理设置:

cmd 复制代码
set http_proxy=
set https_proxy=

永久设置代理(对所有新的 CMD 会话有效):

使用 setx 命令可以将代理设置保存到系统或用户环境变量中,使其对所有新的 CMD 会话有效。

cmd 复制代码
setx http_proxy "http://127.0.0.1:10809"
setx https_proxy "http://127.0.0.1:10809"

如果需要将其设置为 系统级别 环境变量(适用于所有用户),可以加上 /M 参数(需要管理员权限):

cmd 复制代码
setx http_proxy "http://127.0.0.1:10809" /M
setx https_proxy "http://127.0.0.1:10809" /M

清除永久代理设置:

要清除永久代理设置,可以使用 setx 命令将变量值设为空:

cmd 复制代码
setx http_proxy ""
setx https_proxy ""

2. PowerShell

在 PowerShell 中,设置代理通过 $env 来设置临时变量,或者通过 [System.Environment]::SetEnvironmentVariable 来设置永久变量。

临时设置代理(只对当前 PowerShell 会话有效):

powershell 复制代码
$env:http_proxy="http://127.0.0.1:10809"
$env:https_proxy="http://127.0.0.1:10809"

查看当前代理设置:

powershell 复制代码
$env:http_proxy
$env:https_proxy

清除临时设置的代理:

powershell 复制代码
$env:http_proxy=$null
$env:https_proxy=$null

永久设置代理(对所有 PowerShell 会话有效):

powershell 复制代码
[System.Environment]::SetEnvironmentVariable("http_proxy", "http://127.0.0.1:10809", [System.EnvironmentVariableTarget]::User)
[System.Environment]::SetEnvironmentVariable("https_proxy", "http://127.0.0.1:10809", [System.EnvironmentVariableTarget]::User)

清除永久代理设置:

powershell 复制代码
[System.Environment]::SetEnvironmentVariable("http_proxy", $null, [System.EnvironmentVariableTarget]::User)
[System.Environment]::SetEnvironmentVariable("https_proxy", $null, [System.EnvironmentVariableTarget]::User)

3. Bash(Linux / macOS)

在 Linux 或 macOS 的 Bash 中,设置代理使用 export 命令来配置的。

临时设置代理(只对当前终端会话有效):

bash 复制代码
export http_proxy="http://127.0.0.1:10809"
export https_proxy="http://127.0.0.1:10809"

查看当前代理设置:

bash 复制代码
echo $http_proxy
echo $https_proxy

永久设置代理(对所有 Bash 会话有效):

export 命令添加到用户的 ~/.bashrc~/.bash_profile 文件中,这样每次打开终端时都会自动设置代理。

bash 复制代码
echo 'export http_proxy="http://127.0.0.1:10809"' >> ~/.bashrc
echo 'export https_proxy="http://127.0.0.1:10809"' >> ~/.bashrc
source ~/.bashrc

清除代理设置:

bash 复制代码
unset http_proxy
unset https_proxy

永久清除代理设置:

~/.bashrc~/.bash_profile 文件中删除设置的代理行,或者将其注释掉。


4. 测试代理

CMD测试代理

bash 复制代码
curl -I www.baidu.com
curl -I www.google.com

PowerShell测试代理

bash 复制代码
curl www.baidu.com
curl www.google.com

Bash测试代理

bash 复制代码
curl -I www.baidu.com
curl -I www.google.com

5. 总结

  • CMD(命令提示符)
    • set 命令:临时设置代理,仅对当前会话有效。
    • setx 命令:永久设置代理,适用于所有新的 CMD 会话。
  • PowerShell
    • $env 变量:临时设置代理,仅对当前会话有效。
    • [System.Environment]::SetEnvironmentVariable:永久设置代理,适用于所有 PowerShell 会话。
  • Bash(Linux / macOS)
    • export 命令:临时设置代理,仅对当前终端会话有效。
    • ~/.bashrc~/.bash_profile 文件:永久设置代理,适用于所有终端会话。
相关推荐
AnalogElectronic6 小时前
vue3 实现贪吃蛇手机版01
开发语言·javascript·ecmascript
Momentary_SixthSense6 小时前
rust笔记
开发语言·笔记·rust
森诺Alyson7 小时前
前沿技术借鉴研讨-2025.10.28(超声数据)
论文阅读·经验分享·深度学习·论文笔记·论文讨论
多多*7 小时前
Spring Bean的生命周期 第二次思考
java·开发语言·rpc
大飞pkz7 小时前
【算法】排序算法汇总1
开发语言·数据结构·算法·c#·排序算法
九年义务漏网鲨鱼7 小时前
BLIP2 工业实战(一):从零实现 LAVIS 跌倒检测 (微调与“踩坑”指南)
人工智能·pytorch·深度学习·语言模型
Swift社区7 小时前
Foundation Model 在 Swift 中的类型安全生成实践
开发语言·安全·swift
草明7 小时前
当 Go 的 channel 被 close 后读写操作会怎么样?
开发语言·后端·golang
AI_56787 小时前
脑科学支持的Python学习法:每天2小时碎片化训练,用‘神经可塑性’打败拖延症“
开发语言·python·学习
前端世界8 小时前
当网络里混入“假网关”:用 Scapy 写一个 DHCP 欺骗检测器(附完整代码与讲解)
开发语言·网络·php