巧用符號鏈接移動文件夾位置

有些時候我們可能因爲系統或者某些軟件的緩存佔得比較多,想把他們從C盤移動到其他地方。但是軟件本身並沒有提供修改緩存文件夾的功能。這下應該怎麼辦呢?其實還真有一個好辦法可以完美解決,這就是今天要爲大家介紹的符號鏈接。

符號鏈接這個名詞經常使用Linux的同學應該聽說的比較多。如果你沒聽說過這個名詞,也沒有關係。因爲他真的非常好理解。簡單的說,符號鏈接就是快捷方式,不過和快捷方式不同的是,符號鏈接會被識別爲真實的文件或者文件夾。而快捷方式這個東西,如果你在Windows下用過命令行的話,應該可以注意到快捷方式只是一個特殊的文件,它有自己的文件擴展名lnk。

正因爲此,如果你將一個軟件的重要目錄移走,然後用那個目錄的快捷方式替換它,那麼這個軟件是無法正常運行的。但是如果你用符號鏈接替換它的話,軟件是可以正常運行的,就像從來沒有移動過這個文件夾一樣!

好了,說了這麼多,下面就來看看如何使用符號鏈接這個功能吧!在cmd和powershell中都有對應的創建符號鏈接的命令,不過這裏我只介紹powershell的命令。powershell作爲cmd的替代品。假如如果有想學習Windows命令行的同學的話,最好學習powershell。cmd這種東西能不碰儘量不碰。

命令十分簡單,只需要在New-Item的參數上添加-ItemType SymbolicLink,然後在指定要創建符號鏈接的源文件即可。

New-Item -Path C:\LinkDir -ItemType SymbolicLink -Value F:\RealDir

下面介紹幾個使用場景。例如我現在有個遊戲在機械硬盤裏加載速度有點慢,所以準備把他放到固態硬盤裏面。但是遊戲啓動器並不支持自定義遊戲路徑的功能。所以這時候符號鏈接就可以派上用場了。首先把遊戲直接移動到固態硬盤,然後在原路徑下創建一個指向現在路徑的符號鏈接。

New-Item 'StarCraft II' -ItemType SymbolicLink -Value 'C:\Games\StarCraft II'

然後再用啓動器啓動遊戲,這時候可以發現,遊戲其實已經移動了,但是啓動器還以爲遊戲在原來的位置。當然如果你右鍵屬性查看符號鏈接的話,會發現他和快捷方式一樣有一個小箭頭,不過並沒有什麼影響。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-UZQtH17p-1587548667529)(https://upload-images.jianshu.io/upload_images/832668-c93a8acdcbd35527.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

另外假如你C盤空間經常不足的話,也可以考慮使用符號鏈接的方式將用戶文件夾下的AppData目錄移動出去,這個目錄保存了用戶使用時幾乎所有的程序緩存,移動它可以保證C盤空間保持一個穩定值。當然由於系統運行的時候隨時都會向這個目錄寫入東西。所以移動的時候最好在PE環境,或者安全模式下移動,防止因爲系統正在運行導致文件夾移動失敗。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章