[英]How to install Visual Studio Code extensions from Command line
為了更輕松地自動化和配置 VS Code,可以從命令行列出、安裝和卸載擴展。 識別擴展時,請提供表單publisher.extension 的全名,例如donjayamanne.python。
code --list-extensions
code --install-extension ms-vscode.cpptools
code --uninstall-extension ms-vscode.csharp
根據文檔,您可以使用--install-extension
。 例如:
code --install-extension ms-vscode.csharp
添加到上面 Shan Khan 的回答中,如果您想在 .bat 文件中安裝擴展,則必須使用call
關鍵字,否則您的腳本會在擴展安裝完成后退出。 此外,如果 code.exe 不在路徑中並且您正在使用完整路徑調用,請確保您指向/bin
目錄:
echo.
echo.
echo Installing VS Code Extensions...
call "C:\Program Files\Microsoft VS Code\bin\code" --install-extension ritwickdey.liveserver
call "C:\Program Files\Microsoft VS Code\bin\code" --install-extension ritwickdey.live-sass
call "C:\Program Files\Microsoft VS Code\bin\code" --install-extension ms-vscode.csharp
call "C:\Program Files\Microsoft VS Code\bin\code" --install-extension PKief.material-icon-theme
echo Done.
echo.
echo.
我相信您想要的是將擴展名安裝為 .vsix 文件。 文檔在這里。 復制以供參考。
您可以手動安裝打包在 .vsix 文件中的 VS Code 擴展。 只需使用提供 .vsix 文件路徑的 VS Code 命令行進行安裝。
code --install-extension myExtensionFolder\\myExtension.vsix
該擴展程序將安裝在您的用戶 .vscode/extensions 文件夾下。 您可以在命令行上提供多個 .vsix 文件以一次安裝多個擴展。
在 Microsoft 教程“[https://docs.microsoft.com/de-de/azure/azure-signalr/signalr-tutorial-authenticate-azure-functions][1]”中,它們顯示了以下內容:
func extensions install -p Microsoft.Azure.WebJobs.Extensions.SignalRService -v 1.0.0
但它不起作用。 所以我嘗試從這里開始:
code --install-extension Microsoft.Azure.WebJobs.Extensions.SignalRService -v 1.0.0
得到了答案:
1.56.2
054a9295330880ed74ceaedda236253b4f39a335
x64
我希望它現在可以工作......
首先,找到完全限定的擴展名。 為此,您可以右鍵單擊給定的擴展程序,然后選擇“復制擴展程序 ID”(在擴展程序窗格中)。
由於其他答案已經說明了 .BAT/.CMD 語法,這里有一個使用 Powershell 腳本(當然可以從 CMD 執行)安裝擴展的示例。
# A system-wide install of VSCode might be in: "C:\Program Files\Microsoft VS Code\bin\code"
param(
[string] $pathToVsCodeExe = ($Env:USERPROFILE + '\AppData\Local\Programs\Microsoft VS Code'),
[string[]] $extensions = @("editorconfig.editorconfig", "dbaeumer.vscode-eslint")
)
try {
$originalLocation = Get-Location
Set-Location $pathToVsCodeExe
$extensions | ForEach-Object {
Invoke-Expression -Command "Code --install-extension $_ --force"
}
}
catch {
$_
}
finally {
Set-Location $originalLocation
}
@derekbaker783 提供的 PowerShell 腳本對我不起作用,它引發了一個與“代碼”不是 cmdlet 相關的異常,所以我將分享一個對我有用的替代方法:
$vsCodeExec = ($Env:PROGRAMFILES) + "\Visual Studio Code\Bin\code.cmd"
$extensions = @(
"ms-vscode.cpptools", # C/C++ Language Support
"ms-dotnettools.csharp", # C# Language Support
"dbankier.vscode-instant-markdown", # Markdown Language Support
"ms-vscode.powershell", # PowerShell Language Support
"ms-python.python", # Python Language Support
"rebornix.ruby", # Ruby Language Support
"spences10.vba", # VBA Language Support
"luggage66.vbscript", # VBScript Language Support
"gordonwalkedby.vbnet", # VB.NET Language Support
"dotjoshjohnson.xml", # XML Language Support
"abusaidm.html-snippets", # HTML Snippets
"ecmel.vscode-html-css", # CSS Intellisense for HTML
"formulahendry.code-runner", # Code Runner
"ms-vscode-remote.remote-wsl", # VSCode Remote - WSL
"vscode-icons-team.vscode-icons", # Icons for VSCode
"ms-vscode.vs-keybindings", # Visual Studio Keymap for VSCode
"abhiagr.livs" # Open/Launch in Visual Studio
) | SORT
$extensions | ForEach-Object {
try {
Invoke-Expression "& '$vsCodeExec' --install-extension $_ --force"
Write-Host # New-Line
} catch {
$_
Exit(1)
}
}
Exit(0)
使用code --install-extension <Extension ID>
要同時安裝多個擴展,請使用以下格式:
code --install-extension dakshmiglani.hex-to-rgba --install-extension dudemelo.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.