本文目录导读:

Windows 系统
PowerShell 脚本
# 设置代理
$proxyServer = "127.0.0.1:7890" # 修改为你的代理地址
# 设置HTTP代理
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -Value $proxyServer
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 1
# 设置环境变量(对某些应用生效)
[Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://$proxyServer", "User")
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://$proxyServer", "User")
Write-Host "代理已开启: $proxyServer"
# 关闭代理
$proxyServer = ""
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0
[Environment]::SetEnvironmentVariable("HTTP_PROXY", $null, "User")
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", $null, "User")
Write-Host "代理已关闭"
批处理脚本
@echo off :: 开启代理 set proxy=127.0.0.1:7890 reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /t REG_SZ /d %proxy% /f echo 代理已开启: %proxy% :: 关闭代理 :: reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f :: echo 代理已关闭
macOS 系统
Shell 脚本
#!/bin/bash # 设置代理 PROXY_HOST="127.0.0.1" PROXY_PORT="7890" # 设置 Wi-Fi 代理(默认网络接口) networksetup -setwebproxy Wi-Fi $PROXY_HOST $PROXY_PORT networksetup -setsecurewebproxy Wi-Fi $PROXY_HOST $PROXY_PORT # 设置环境变量 export HTTP_PROXY="http://$PROXY_HOST:$PROXY_PORT" export HTTPS_PROXY="http://$PROXY_HOST:$PROXY_PORT" echo "代理已开启: $PROXY_HOST:$PROXY_PORT" # 关闭代理 # networksetup -setwebproxystate Wi-Fi off # networksetup -setsecurewebproxystate Wi-Fi off # unset HTTP_PROXY HTTPS_PROXY # echo "代理已关闭"
Linux 系统
临时设置(仅当前终端)
#!/bin/bash # 设置代理 export HTTP_PROXY="http://127.0.0.1:7890" export HTTPS_PROXY="http://127.0.0.1:7890" export http_proxy="http://127.0.0.1:7890" export https_proxy="http://127.0.0.1:7890" echo "代理已设置" # 清除代理 # unset HTTP_PROXY HTTPS_PROXY http_proxy https_proxy
永久设置(写入配置文件)
#!/bin/bash # 添加代理配置到 /etc/environment sudo tee -a /etc/environment << EOF HTTP_PROXY="http://127.0.0.1:7890" HTTPS_PROXY="http://127.0.0.1:7890" http_proxy="http://127.0.0.1:7890" https_proxy="http://127.0.0.1:7890" EOF # 添加到 bashrc echo 'export HTTP_PROXY="http://127.0.0.1:7890"' >> ~/.bashrc echo 'export HTTPS_PROXY="http://127.0.0.1:7890"' >> ~/.bashrc echo "代理已永久配置,请重新登录生效"
跨平台 Python 脚本
#!/usr/bin/env python3
import sys
import platform
import subprocess
def set_proxy(proxy_host="127.0.0.1", proxy_port="7890"):
system = platform.system()
proxy = f"{proxy_host}:{proxy_port}"
if system == "Windows":
import winreg
# 修改注册表
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER,
r"Software\Microsoft\Windows\CurrentVersion\Internet Settings",
0, winreg.KEY_ALL_ACCESS)
winreg.SetValueEx(key, "ProxyEnable", 0, winreg.REG_DWORD, 1)
winreg.SetValueEx(key, "ProxyServer", 0, winreg.REG_SZ, proxy)
winreg.CloseKey(key)
print(f"Windows 代理已设置: {proxy}")
elif system == "Darwin": # macOS
subprocess.run(["networksetup", "-setwebproxy", "Wi-Fi", proxy_host, proxy_port])
subprocess.run(["networksetup", "-setsecurewebproxy", "Wi-Fi", proxy_host, proxy_port])
print(f"macOS 代理已设置: {proxy}")
elif system == "Linux":
# 设置环境变量
env_vars = {
"HTTP_PROXY": f"http://{proxy}",
"HTTPS_PROXY": f"http://{proxy}",
"http_proxy": f"http://{proxy}",
"https_proxy": f"http://{proxy}"
}
for key, value in env_vars.items():
print(f"export {key}={value}")
print(f"Linux 代理变量已设置")
if __name__ == "__main__":
# 使用示例
set_proxy("127.0.0.1", "7890")
使用说明
- 修改代理地址:将脚本中的
0.0.1:7890替换为你的实际代理地址 - 管理员权限:Windows 和 macOS 可能需要管理员权限
- 生效范围:
- PowerShell/CMD 脚本:影响系统范围
- Shell 脚本:临时影响当前会话
- 环境变量:影响大部分命令行工具
选择适合你系统的脚本,将代理地址修改为实际的代理服务地址即可。