簡體   English   中英

如何從命令行安裝 Visual Studio Code 擴展

[英]How to install Visual Studio Code extensions from Command line

如何在代碼實例打開時從命令提示符安裝 Visual Studio 代碼擴展。 我想從 Visual Studio Code 庫安裝擴展。

以下是我要安裝的擴展數據。

在此處輸入圖像描述

我的 Visual Studio Code 實例已打開。 我想要做的是從命令提示符安裝以下擴展。

為了更輕松地自動化和配置 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM