win10误删环境变量Path的几种恢复方法
因为在添加环境变量的时候,不小心将原环境变量覆盖掉的了,导致很多程序不能正常运行~~
#添加到系统环境变量 |
这是所犯的错误,%PATH%并没有产生变量的效果(原本是想在PATH后面追加变量的)
那么怎么恢复修改的环境变量呢?
Windows环境变量简单介绍
Windows系统中有两种环境变量:用户变量和系统变量。系统变量与用户变量的PATH是为了告诉系统可执行文件放在什么路径(平常执行程序的路径,要放在PATH里面,当系统需要的时候就会去path查找)
查找规则
- windows系统在执行用户命令时,若用户未给出文件的绝对路径,则首先在当前目录下寻找相应的可执行文件、批处理文件等;
- 若果当前目录找不到对应文件名的程序,在系统变量的PATH的路径中,依次寻找对应的可执行程序文件(查找顺序是按照路径的录入顺序从左往右寻找的,最前面一条的优先级最高,如果找到程序就停止寻找,后面的路径不再执行);
- 如果系统变量的PATH的路径找不到,再到用户变量的PATH路径中寻找(如果系统变量和用户变量的PATH中同时包含了同一个命令,则优先执行系统变量PATH中的命令)
需要注意的点:
环境变量没有区分大小写,例如path跟PATH是一样的
系统变量对所有用户有效;用户变量只对当前用户有效
用户变量与系统变量,名称是变量,值是里面的内容,也就是通过变量存储了想要存储的内容,方便调用
每次新加了命令以后,要确定保存了。再重启CMD,否则命令不生效的。被修改的系统Path只是同步到了注册表中,并未立即生效,所以可以使用cmd命令行重新得到系统Path。我们下面通过的恢复PATH的方法大都是依赖于还未关闭的终端,在这些未关闭的终端或者IDE中去获取环境变量~~~
在CMD里要输出环境变量 ECHO %变量名%
命令行添加环境变量
#setx命令:在用户或系统环境创建或修改环境变量。能基于参数、注册表项或文件输入设置变量。 |
查看用户环境变量和系统变量
- 查看所有的用户变量
reg query HKCU\Environment /v * |
- 查看用户变量中的path
reg query HKCU\Environment /v PATH |
- 查找系统变量中所有的变量:
REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v * |
- 查询系统变量中的path变量:
REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v path |
恢复误修改的PATH
千万不要重启电脑!
未重启
利用还未关闭的IDEA/PyCharm/Goland/cmd/终端恢复
#被修改的系统Path只是同步到了注册表中,并未立即生效,所以可以使用cmd命令行重新得到系统Path。 |
使用备份注册表恢复
#无论使用图形界面还是cmd命令行修改系统Path,都是立即同步到注册表文件的,所以,没有备份注册表也不用看了。 |
powershell
该方法意外的好用,找回了遗失的环境变量~~
#用Windows PowerShell运行以下命令获取路径环境变量 |
利用用户配置备份文件恢复
这个方法适用于有用户配置文件备份或系统备份的情况下,在位于Users文件夹下的用户名子文件夹中找到名为NTUSER.DAT的文件,然后用记事本打开这个文件,里面就包含了旧路径环境变量,通过查找PATH相关语句,就可以获取路径环境变量了
C:\Users\86063\NTUSER.DAT |
已重启
这种情况下,在注册表中搜索名为Environment的项,并检查结果中出现的相关选项下是否尚包含路径环境变量。如果注册表中的环境变量被清空,那么可以在相同版本的win10注册表中,查找并复制默认路径环境变量值,进行恢复。
使用win10默认Path
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\ |
refer
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 晚上十一点睡觉のBlog!
评论










