昨天,在我安装数据库时,在 Path 系统变量中添加一条记录时,我错误的将 Path 系统变量覆盖了。等我修改完,就只剩我最近添加的那一条记录了。
当我在 cmd 中测试我安装数据库是否成功时,我以为是我在系统变量中设置了路径错误,结果却发现了 Path 被覆盖了。当时整个人有点懵逼了。
我什么时候改的?我操作没有错误啊!系统为什么都没有提示?
发出了灵魂三连击后,我开始百度。
一 尝试解决
关键词:“Path 删除后如何恢复”
网上的答案其实都差不多,总结起来就是:
-
没有重启的话,去注册表对应目录下查看 Path 以前的数据。方法为:
win+r
打开小窗口,然后输入regedit
打开注册表。然后输入路径:计算机\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment
找到 Path 查看数据。
我的问题其实不是删除,是覆盖。所以我的 Path 下一样只剩一条数据了。
-
打开 cmd ,然后输入
echo %path%
这个方法确实可以看到一些记录,我也照着添加了。但是,这些记录有的并不是正确的。
关键词:“Path 覆盖后如何恢复”
这个根本没有搜到
此时我已经放弃恢复了,我打算先把系统默认的加回来。
关键词:“Win 10 默认 Path ”
这个网上也有很多,而且内容极为不同。其实系统默认的 Path 不多,大多都是你后面自己加的,这里给出我的两台机器都有的 Path 系统变量:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;
主要都是带 System
的。
注意:如果你复制了错误的 Path 记录,不但不会有用,反而可能会有不好的影响。所以,当误删了 Path 后,不要盲目的把网上的环境变量一股脑的复制粘贴到你的 Path 中,这只是一种“心理安慰”。出了问题,自己的锅,勇敢的面对并且承担,冷静下来想一想解决办法。
二 煎熬
在我把echo %path%
中的记录添加到 Path 后,我感到很焦急。所以我在群里发出了求助,接下来的一段时间里,我期待着有人可以站出来帮助我。不过结果挺令人失望的,在你出问题时,别人的冷漠就像在别人出问题时你的冷漠一样。
我此时想起我可以复制别人电脑的 Path,刚好我有一台旧的笔记本,我就打开了它,然后查看它的 Path 记录。然后将它们复制到我的 Path 中。但是测试依然失败了。
我之前没有遇到过这种情况。如果系统坏了,那么重装便是;但是现在的情况,感觉一切正常,电脑上其他什么都可以用,但是你需要的环境无法安装好。到底是重装系统还是心存恢复 Path 的希望? 就像被宣告得了癌症,进退维谷。
此时的我,没有人帮助我感觉我的话,我只能接受重装系统,重新下载软件,重新添加 Path 。这一系列复杂的过程让我眉头紧锁,严峻的后果让我放弃了自己思考出路的想法,我只好寻找一位老师(下面我们叫他涛哥吧)的帮助。
涛哥告诉我,带 System 的这些系统的记录(就是我前面给出来的)可以先添加一下。其他的如果不记得的话,就没有办法回复了。
由于cmd 中 javac
(我之前配置好的)命令失效,我担心我的虚拟机会受影响。所以我打开了虚拟器敲下ifconfig
,第一个网卡(eth0)的信息果然已经看不到了。没有这条信息,XShell 就没有办法连接这个虚拟机了。(心态大崩)
这里还是要感谢涛哥,他的耐心指导让我冷静了下来。
三 虚惊一场
javac 命令的失效我还怀疑是我自己命令写错了。我就打开了我之前的博客,想看一看当时是怎么查看 java 环境如何配置的。
就在这时,“奇迹”出现了,我的博客中有我当时 Path 环境变量的截图!!!
四 痛定思痛
当时百感交集。但一个最大的感受是:写博客真他娘有用 。
在面对困难时,有时候你认为只有别人可以帮助你,你不曾注意到,救命稻草就在你自己手中
五 总结
1. 防患未然
如果 Path 没有误删的朋友,以后操作 Path 时一定小心谨慎。
image备份注册表 备份的方式很简单,网上都有
参考:https://zhuanlan.zhihu.com/p/38245505
2. 亡羊补牢
如果已经误删了,可以先看看注册表中还有记录没有。如果没有,先把默认的环境变量加上。其他的以后慢慢加吧。但是不要慌张,不要着急重装系统,留下一点希望是好的。(echo 那个可以参考一下,不过要抱着怀疑的心态。)
下面是我修改 Path 的一些过程:
东拼西凑出来的错误 Path:
C:\Program Files\MySQL\bin;
C:\Program Files\MySQL\MySQL Shell 8.0\bin\;
C:\Users\1\AppData\Local\Microsoft\WindowsApps;
C:\Users\1\AppData\Local\GitHubDesktop\bin;
D:\xshell\;
%SystemRoot%\system32;
%SystemRoot%;
%SystemRoot%\System32\Wbem;
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;
%SYSTEMROOT%\System32\OpenSSH\;
%JAVA_HOME%\bin;
echo %path%
出来的错误 Path:(尤其是后面两个,根本啥也不是,我连这个路径也有没有)
C:\Program Files\MySQL\bin;
C:\Program Files\MySQL\MySQL Shell 8.0\bin\;
C:\Users\1\AppData\Local\Microsoft\WindowsApps;
C:\Users\1\AppData\Local\GitHubDesktop\bin
最终的正确 Path:
C:\Program Files\MySQL\bin;C:\Program Files\MySQL\MySQL Shell 8.0\bin\;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%SYSTEMROOT%\System32\OpenSSH\;%JAVA_HOME%\bin;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;D:\github\Git\cmd;D:\Tortosise\bin;D:\codeblock\CodeBlocks\MinGW\bin;
网友评论