使用命令行管理 Windows 环境变量

1. 使用命令提示符 (CMD)

1.1. 设置环境变量

添加或修改临时环境变量(当前会话有效)

1
set MY_VAR=value

添加或修改用户环境变量

1
setx MY_VAR "value"

添加或修改系统环境变量(需要管理员权限):

1
setx /M MY_VAR "value"

1.2. 删除用户环境变量

MY_VAR 设置为空字符串(常用操作,非真正删除)

1
setx MY_VAR ""

修改注册表之前,请做好备份等安全防护措施;注意注册表的修改具有延迟性,造成的系统或程序影响可能不会在第一时间被感知

若需要完全删除环境变量,可以使用 reg 命令来操作注册表:

1
reg delete "HKCU\Environment" /v MY_VAR /f

删除系统环境变量(需要管理员权限)

1
reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v MY_VAR /f

1.3. 查看环境变量

1
set

查看特定的环境变量:

1
set MY_VAR

2. 使用 PowerShell

2.1. 设置环境变量

添加或修改临时环境变量(当前会话有效)

1
$env:MY_VAR = "value"

添加或修改用户环境变量

1
[System.Environment]::SetEnvironmentVariable("MY_VAR", "value", "User")

添加或修改系统环境变量(需要管理员权限):

1
2
3
4
5
6
7
[System.Environment]::SetEnvironmentVariable("MY_VAR", "value", "Machine")

# 示例:添加 minikube 到系统环境变量 Path
$oldPath = [Environment]::GetEnvironmentVariable('Path', [EnvironmentVariableTarget]::Machine)
if ($oldPath.Split(';') -inotcontains 'C:\minikube'){
[Environment]::SetEnvironmentVariable('Path', $('{0};C:\minikube' -f $oldPath), [EnvironmentVariableTarget]::Machine)
}

2.2. 查看环境变量

1
Get-ChildItem Env:

查看特定的环境变量:

1
$env:MY_VAR

2.3. 删除环境变量

删除用户环境变量

1
[System.Environment]::SetEnvironmentVariable("MY_VAR", $null, "User")

删除系统环境变量(需要管理员权限)

1
[System.Environment]::SetEnvironmentVariable("MY_VAR", $null, "Machine")

3. 参考



使用命令行管理 Windows 环境变量
https://blog.cc01cc.cn/2024/11/05/windows-environment-variable-command-line/
作者
零一/cc01cc(zeo)
发布于
2024年11月5日
许可协议