vscode
的擴展和用戶數(shù)據(jù)都是默認在C盤下的
extensions
:C:\Users\.vscode\extensions
user-data
:C:\Users\AppData\Roaming\Code
一般來說,用戶文件夾大小會比擴展目錄的大小會大,就我而言,我的擴展有1-1.5GB
的大小,而用戶文件夾卻占了我5GB
容量,這對C
盤容量嚴重不足的用戶是非常難受的
所以,修改這兩個文件夾的目錄位置以及刻不容緩
VSCode便攜版(不推薦)
官方有一個zip
版本的VSCode
當我們解壓完畢后:
- 在當前
VSCode
目錄下新建一個data
文件夾 - 點擊
Code.exe
啟動,啟動完畢后關(guān)閉 - 進入當前的
data
目錄,可以發(fā)現(xiàn)有擴展目錄,以及用戶文件夾 - 然后我們只需要將
C:\Users\.vscode\extensions
目錄下的所有擴展文件夾全選復制到extensions
目錄中,以及將C:\Users\AppData\Roaming\Code
文件夾內(nèi)的所有文件全選復制到user-data
目錄內(nèi),再次打開Code.exe
程序,就可以發(fā)現(xiàn)根以前的VSCode
一模一樣的配置以及擴展
缺點
但是我當時遇到的問題是當文件右鍵,或者文件夾右鍵時,不能通過VSCode
打開文件,此時需要打開注冊表,修改通過VSCode
打開的程序位置。
同時也發(fā)現(xiàn)了一個弊端,就是需要管理員權(quán)限的文件夾打不開,也寫不進去,可以通過將Code.exe
程序右鍵->屬性->兼容性->以管理員身份運行此程序->應用
。但經(jīng)過這操作后,我發(fā)現(xiàn)的問題是VSCode
窗口的工作空間不能將文件拖進去。上網(wǎng)一搜發(fā)現(xiàn),只需要將Code.exe
的以管理員身份運行此程序取消勾選,那這不就跟我預期的沖突了嘛????
后來想到了還是使用安裝版的,想辦法將兩個大文件目錄位置修改一下
VSCode安裝版(推薦)
安裝版網(wǎng)址
選擇 System Installer 再根據(jù)自己的系統(tǒng)選擇,下面的.zip
就是上面說的便攜版
要修改兩個文件夾的位置,就需要使用官方的高級 CLI 選項了
有兩個選項我們可以用得上:--extensions-dir <dir>
和--user-data-dir <dir>
,但這些命令對于便攜版是不能生效的
可以將這兩個選項添加到VSCode
的快捷方式后面
-
右鍵VSCode快捷方式->快捷方式->目標->
在后面添加空格再加上--extensions-dir "D:\.vscode\extensions" --user-data-dir "D:\.vscode\user-data"
自行替換目錄位置 -
我的設(shè)置??
-
"D:\.Software\Microsoft VS Code\Code.exe" --extensions-dir "D:\.vscode\extensions" --extensions-dir "D:\.vscode\extensions" --user-data-dir "D:\.vscode\user-data"
-
但是就這樣修改不能保證文件右鍵通過Code打開會使用指定的 擴展文件夾以及用戶文件夾
接下來需要修改注冊表的主要VSCode
打開方式修改
- 對選中文件右鍵點擊彈出的菜單
- 對選擇目錄右鍵點擊彈出的菜單
- 在目錄空白處右鍵點擊彈出的菜單
- 對磁盤分區(qū)右鍵點擊彈出的菜單
相對應的注冊表位置為
計算機\HKEY_CLASSES_ROOT\*\shell\VSCode\command
計算機\HKEY_CLASSES_ROOT\Directory\shell\VSCode\command
計算機\HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode\command
計算機\HKEY_CLASSES_ROOT\Drive\shell\VSCode\command
注冊表打開:
Win+r->輸入:Regedit->回車
找到這些注冊表項,在Code.exe
后添加同快捷方式一樣的參數(shù)內(nèi)容:
--extensions-dir "D:\.vscode\extensions" --user-data-dir "D:\.vscode\user-data"
例如:
"D:\.Software\Microsoft VS Code\Code.exe" --extensions-dir "D:\.vscode\extensions" --user-data-dir "D:\.vscode\user-data" "%1"
將四個注冊表位置的數(shù)值數(shù)據(jù)一一添加即可,當然主要的是這四個位置,還有一些其他的文件打開可以執(zhí)行添加
終端使用code . 命令打開項目
當使用
code .
命令時,又發(fā)現(xiàn)了一個小問題,通過此命令打開的VSCode
還是不能找到擴展和用戶文件夾解決辦法如下??
code .
命令,是通過環(huán)境變量PATH
中配置的路徑找到VSCode
的安裝位置,下面的bin
目錄里面有一個code.cmd
安裝版的VSCode
會默認幫我們添加環(huán)境變量
檢查一下code.cmd
文件
@echo off
setlocal
set VSCODE_DEV=
set ELECTRON_RUN_AS_NODE=1
"%~dp0..\Code.exe" "%~dp0..\resources\app\out\cli.js" --ms-enable-electron-run-as-node %*
endlocal
-
可以發(fā)現(xiàn)第五行有一個
..\Code.exe
,表示運行上一個目錄的Code.exe
程序 -
再往后面看,可以發(fā)現(xiàn)
--ms-enable-electron-run-as-node
有點像高級CLI
選項,我們可以將上面提到的--extensions-dir
和--user-data-dir
繼續(xù)添加在后面。下面是我添加后的代碼,自行更換路徑即可-
@echo off setlocal set VSCODE_DEV= set ELECTRON_RUN_AS_NODE=1 "%~dp0..\Code.exe" "%~dp0..\resources\app\out\cli.js" --ms-enable-electron-run-as-node --extensions-dir "D:\.vscode\extensions" --user-data-dir "D:\.vscode\user-data" %* endlocal
-
最后再使用code .
命令就可以找到擴展和用戶信息文件夾了
問題
更新之后,VSCode會重置注冊表
解決辦法
使用注冊表 .reg
文件一鍵修改
注意!
地址值有些符號需要使用
\
轉(zhuǎn)譯,可通過將復制下來的未轉(zhuǎn)譯字符串路徑使用IDEA
自動轉(zhuǎn)譯路徑修改為自己的本地路徑
由于內(nèi)容出現(xiàn)
通過 Code 打開
中文,需要將文件另存為UTF-16 LE
注冊表默認編碼,否則會出現(xiàn)亂碼
String str = "路徑"
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\VSCode]
@="通過 Code 打開"
"Icon"="D:\\.Software\\Microsoft VS Code\\Code.exe"
[HKEY_CLASSES_ROOT\*\shell\VSCode\command]
@="\"D:\\.Software\\Microsoft VS Code\\Code.exe\" --extensions-dir \"D:\\.vscode\\extensions\" --user-data-dir \"D:\\.vscode\\user-data\" \"%1\""
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\VSCode]
@="通過 Code 打開"
"Icon"="D:\\.Software\\Microsoft VS Code\\Code.exe"
[HKEY_CLASSES_ROOT\Directory\shell\VSCode\command]
@="\"D:\\.Software\\Microsoft VS Code\\Code.exe\" --extensions-dir \"D:\\.vscode\\extensions\" --user-data-dir \"D:\\.vscode\\user-data\" \"%V\""
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode]
@="通過 Code 打開"
"Icon"="D:\\.Software\\Microsoft VS Code\\Code.exe"
[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode\command]
@="\"D:\\.Software\\Microsoft VS Code\\Code.exe\" --extensions-dir \"D:\\.vscode\\extensions\" --user-data-dir \"D:\\.vscode\\user-data\" \"%V\""
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Drive\shell\VSCode]
@="通過 Code 打開"
"Icon"="D:\\.Software\\Microsoft VS Code\\Code.exe"
[HKEY_CLASSES_ROOT\Drive\shell\VSCode\command]
@="\"D:\\.Software\\Microsoft VS Code\\Code.exe\" --extensions-dir \"D:\\.vscode\\extensions\" --user-data-dir \"D:\\.vscode\\user-data\" \"%V\""
[HKEY_CLASSES_ROOT\vscode\shell\open\command]
@="\"D:\\.Software\\Microsoft VS Code\\Code.exe\" --extensions-dir \"D:\\.vscode\\extensions\" --user-data-dir \"D:\\.vscode\\user-data\" \"--open-url\" \"--\" \"%1\""
[HKEY_CLASSES_ROOT\VSCodeSourceFile\shell\open\command]
@="\"D:\\.Software\\Microsoft VS Code\\Code.exe\" --extensions-dir \"D:\\.vscode\\extensions\" --user-data-dir \"D:\\.vscode\\user-data\" \"%1\""
2023/04/16 ↓
當然也可以寫一個bat
腳本自動執(zhí)行
-
創(chuàng)建一個
code.cmd
將上面的添加命令行參數(shù)的內(nèi)容寫入 -
重命令 注冊表批處理文件為
update.reg
-
創(chuàng)建
update.bat
文件-
寫入內(nèi)容
-
@echo off rem 注冊表的路徑 set "regFilePath=D:\.vscode\update.reg" rem 重寫的code.cmd 文件路徑,后面會替換vscode bin 目錄下的code.cmd set "cmdFilePath=D:\.vscode\code.cmd" rem VScode的安裝路徑 set "destinationFolderPath=D:\.Software\Microsoft VS Code\bin" rem ----↓ 以下不用動 set "destinationFilePath=%destinationFolderPath%\code.cmd" rem 運行注冊表文件 regedit /s "%regFilePath%" rem 復制并替換文件,需要管理員權(quán)限 copy /y "%cmdFilePath%" "%destinationFolderPath%" if exist "%destinationFilePath%" ( takeown /f "%destinationFilePath%" icacls "%destinationFilePath%" /grant administrators:F ) move /y "%destinationFolderPath%\code.cmd" "%destinationFilePath%"
-
-
管理員運行
update.bat
終極解決辦法!(強烈推薦)
經(jīng)過一頓操作,終于又想到一個非常簡單的辦法
為VScode C盤默認的
.vscode
和Code
創(chuàng)建軟連接
如果根據(jù)上一步操作,建議直接卸載VSCode,重裝一遍,因為接下來的操作,完全不用那么麻煩文章來源:http://www.zghlxwxcb.cn/news/detail-401350.html
- 將
C
盤用戶文件Code
直接剪切到新路徑 - 確保目標路徑文件夾不存在 ,輸入下面的第一條命令。
- 由于
"%USERPROFILE%\.vscode"
路徑下有一個默認的extensions
,所以不能使用"D:\.vscode\extensions"
路徑,否者會不生效 - 還有需要注意的是,這個命令是cmd命令,需要使用cmd命令窗口執(zhí)行
- 路徑自行替換
mklink /D "%APPDATA%\Code" "D:\.vscode\user-data"
mklink /D "%USERPROFILE%\.vscode" "D:\.vscode\"
- 如果需要刪除軟連接
rd /s "%APPDATA%\Code"
我的博客,歡迎前往: https://blog.ivwv.site/文章來源地址http://www.zghlxwxcb.cn/news/detail-401350.html
到了這里,關(guān)于VSCode修改擴展和用戶文件夾目錄位置(Windows)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!