搜索 K
主题
本文档介绍在 Windows 中查看、设置、取消环境变量的常用方法,适合开发环境配置(如 Java、Node.js、Rust、Go 等)。
如果你主要用于 Rust,可结合 Windows Rust 安装配置 一起使用。 Scoop 包管理器的代理与环境变量配置请参阅 Scoop。
环境变量是操作系统提供给程序的键值配置,例如:
PATH:命令搜索路径JAVA_HOME:JDK 安装目录RUSTUP_DIST_SERVER:rustup 下载源程序启动时会读取环境变量,从而影响运行行为。
Windows 环境变量常见有三种作用域:
| 作用域 | 生效范围 | 持久化 | 说明 |
|---|---|---|---|
| 当前会话(Process) | 当前终端窗口 | 否 | 关闭窗口后失效 |
| 用户级(User) | 当前用户 | 是 | 仅对当前用户生效 |
| 系统级(Machine) | 所有用户 | 是 | 通常需要管理员权限 |
系统属性 → 高级 → 环境变量# 设置
$env:DEMO_VAR = "hello"
# 查看
echo $env:DEMO_VAR
# 删除当前会话变量
Remove-Item Env:DEMO_VAR -ErrorAction SilentlyContinue# 设置用户级变量(当前用户)
setx DEMO_VAR "hello"
# 设置系统级变量(所有用户,需管理员权限)
setx DEMO_VAR "hello" /Msetx 设置后不会立即影响当前窗口,需要重新打开终端。
# 设置用户级变量
[Environment]::SetEnvironmentVariable("DEMO_VAR", "hello", "User")
# 设置系统级变量
[Environment]::SetEnvironmentVariable("DEMO_VAR", "hello", "Machine")
# 删除变量(取消设置)
[Environment]::SetEnvironmentVariable("DEMO_VAR", $null, "User")
[Environment]::SetEnvironmentVariable("DEMO_VAR", $null, "Machine")# 查看当前会话变量
echo $env:DEMO_VAR
# 查看持久化用户级变量
[Environment]::GetEnvironmentVariable("DEMO_VAR", "User")
# 查看持久化系统级变量
[Environment]::GetEnvironmentVariable("DEMO_VAR", "Machine")PATH 是最常修改的变量,建议避免直接覆盖,采用“追加”方式。
# 追加到用户 PATH
$old = [Environment]::GetEnvironmentVariable("Path", "User")
$new = "$old;C:\tools\bin"
[Environment]::SetEnvironmentVariable("Path", $new, "User")不要误删原有 PATH 内容;路径之间使用分号 ; 分隔。修改后请重开终端再验证。
setx,但还在旧终端里验证配置 Rust 镜像变量
# 设置(用户级)
[Environment]::SetEnvironmentVariable("RUSTUP_DIST_SERVER", "https://mirrors.tuna.tsinghua.edu.cn/rustup", "User")
[Environment]::SetEnvironmentVariable("RUSTUP_UPDATE_ROOT", "https://mirrors.tuna.tsinghua.edu.cn/rustup/rustup", "User")
# 删除(用户级)
[Environment]::SetEnvironmentVariable("RUSTUP_DIST_SERVER", $null, "User")
[Environment]::SetEnvironmentVariable("RUSTUP_UPDATE_ROOT", $null, "User")配置 Claude Code 环境变量
[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "http://43.153.107.95:8317", "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", "sk-uG0JQ1XSXq4s0i9r3", "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_OPUS_MODEL", "gpt-5.3-codex(high)", "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_SONNET_MODEL", "gpt-5.3-codex(medium)", "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_HAIKU_MODEL", "gpt-5.3-codex(low)", "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_MODEL", "gpt-5.3-codex", "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_SMALL_FAST_MODEL", "gpt-5.3-codex(low)", "Machine")
# 删除系统级环境变量(需要以管理员身份运行 PowerShell)
[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", $null, "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", $null, "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_OPUS_MODEL", $null, "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_SONNET_MODEL", $null, "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_HAIKU_MODEL", $null, "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_MODEL", $null, "Machine")
[Environment]::SetEnvironmentVariable("ANTHROPIC_SMALL_FAST_MODEL", $null, "Machine")