昨天,在我安裝數(shù)據(jù)庫時(shí),在 Path 系統(tǒng)變量中添加一條記錄時(shí),我錯(cuò)誤的將 Path 系統(tǒng)變量覆蓋了。等我修改完,就只剩我最近添加的那一條記錄了。
當(dāng)我在 cmd 中測試我安裝數(shù)據(jù)庫是否成功時(shí),我以為是我在系統(tǒng)變量中設(shè)置了路徑錯(cuò)誤,結(jié)果卻發(fā)現(xiàn)了 Path 被覆蓋了。當(dāng)時(shí)整個(gè)人有點(diǎn)懵逼了。
我什么時(shí)候改的?我操作沒有錯(cuò)誤?。∠到y(tǒng)為什么都沒有提示?
發(fā)出了靈魂三連擊后,我開始百度。
一 嘗試解決
關(guān)鍵詞:“Path 刪除后如何恢復(fù)”
網(wǎng)上的答案其實(shí)都差不多,總結(jié)起來就是:
-
沒有重啟的話,去注冊(cè)表對(duì)應(yīng)目錄下查看 Path 以前的數(shù)據(jù)。方法為:
win+r打開小窗口,然后輸入regedit打開注冊(cè)表。然后輸入路徑:計(jì)算機(jī)\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment找到 Path 查看數(shù)據(jù)。
我的問題其實(shí)不是刪除,是覆蓋。所以我的 Path 下一樣只剩一條數(shù)據(jù)了。
-
打開 cmd ,然后輸入
echo %path%這個(gè)方法確實(shí)可以看到一些記錄,我也照著添加了。但是,這些記錄有的并不是正確的。
關(guān)鍵詞:“Path 覆蓋后如何恢復(fù)”
這個(gè)根本沒有搜到
此時(shí)我已經(jīng)放棄恢復(fù)了,我打算先把系統(tǒng)默認(rèn)的加回來。
關(guān)鍵詞:“Win 10 默認(rèn) Path ”
這個(gè)網(wǎng)上也有很多,而且內(nèi)容極為不同。其實(shí)系統(tǒng)默認(rèn)的 Path 不多,大多都是你后面自己加的,這里給出我的兩臺(tái)機(jī)器都有的 Path 系統(tǒng)變量:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;
主要都是帶 System 的。
注意:如果你復(fù)制了錯(cuò)誤的 Path 記錄,不但不會(huì)有用,反而可能會(huì)有不好的影響。所以,當(dāng)誤刪了 Path 后,不要盲目的把網(wǎng)上的環(huán)境變量一股腦的復(fù)制粘貼到你的 Path 中,這只是一種“心理安慰”。出了問題,自己的鍋,勇敢的面對(duì)并且承擔(dān),冷靜下來想一想解決辦法。
二 煎熬
在我把echo %path% 中的記錄添加到 Path 后,我感到很焦急。所以我在群里發(fā)出了求助,接下來的一段時(shí)間里,我期待著有人可以站出來幫助我。不過結(jié)果挺令人失望的,在你出問題時(shí),別人的冷漠就像在別人出問題時(shí)你的冷漠一樣。
我此時(shí)想起我可以復(fù)制別人電腦的 Path,剛好我有一臺(tái)舊的筆記本,我就打開了它,然后查看它的 Path 記錄。然后將它們復(fù)制到我的 Path 中。但是測試依然失敗了。
我之前沒有遇到過這種情況。如果系統(tǒng)壞了,那么重裝便是;但是現(xiàn)在的情況,感覺一切正常,電腦上其他什么都可以用,但是你需要的環(huán)境無法安裝好。到底是重裝系統(tǒng)還是心存恢復(fù) Path 的希望? 就像被宣告得了癌癥,進(jìn)退維谷。
此時(shí)的我,沒有人幫助我感覺我的話,我只能接受重裝系統(tǒng),重新下載軟件,重新添加 Path 。這一系列復(fù)雜的過程讓我眉頭緊鎖,嚴(yán)峻的后果讓我放棄了自己思考出路的想法,我只好尋找一位老師(下面我們叫他濤哥吧)的幫助。
濤哥告訴我,帶 System 的這些系統(tǒng)的記錄(就是我前面給出來的)可以先添加一下。其他的如果不記得的話,就沒有辦法回復(fù)了。
由于cmd 中 javac(我之前配置好的)命令失效,我擔(dān)心我的虛擬機(jī)會(huì)受影響。所以我打開了虛擬器敲下ifconfig,第一個(gè)網(wǎng)卡(eth0)的信息果然已經(jīng)看不到了。沒有這條信息,XShell 就沒有辦法連接這個(gè)虛擬機(jī)了。(心態(tài)大崩)
這里還是要感謝濤哥,他的耐心指導(dǎo)讓我冷靜了下來。
三 虛驚一場
javac 命令的失效我還懷疑是我自己命令寫錯(cuò)了。我就打開了我之前的博客,想看一看當(dāng)時(shí)是怎么查看 java 環(huán)境如何配置的。
就在這時(shí),“奇跡”出現(xiàn)了,我的博客中有我當(dāng)時(shí) Path 環(huán)境變量的截圖!?。?/p>
四 痛定思痛
當(dāng)時(shí)百感交集。但一個(gè)最大的感受是:寫博客真他娘有用 。
在面對(duì)困難時(shí),有時(shí)候你認(rèn)為只有別人可以幫助你,你不曾注意到,救命稻草就在你自己手中
五 總結(jié)
1. 防患未然
如果 Path 沒有誤刪的朋友,以后操作 Path 時(shí)一定小心謹(jǐn)慎。
備份注冊(cè)表 備份的方式很簡單,網(wǎng)上都有
參考:https://zhuanlan.zhihu.com/p/38245505
2. 亡羊補(bǔ)牢
如果已經(jīng)誤刪了,可以先看看注冊(cè)表中還有記錄沒有。如果沒有,先把默認(rèn)的環(huán)境變量加上。其他的以后慢慢加吧。但是不要慌張,不要著急重裝系統(tǒng),留下一點(diǎn)希望是好的。(echo 那個(gè)可以參考一下,不過要抱著懷疑的心態(tài)。)
下面是我修改 Path 的一些過程:
東拼西湊出來的錯(cuò)誤 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%出來的錯(cuò)誤 Path:(尤其是后面兩個(gè),根本啥也不是,我連這個(gè)路徑也有沒有)
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;