簡體   English   中英

Visual Studio Code是否可以在Command Palette中使用PowerShell?

[英]Does Visual Studio Code work with PowerShell in the Command Palette?

使用Visual Studio Code (不是傳統的Visual Studio IDE),您可以在Command Palette中運行PowerShell嗎? 我問,因為我通常在完整的IDE中使用它。

我沒有看到文檔中提到 PowerShell,除了基本的語法高亮。 我嘗試過沒有成功。 它是不受支持的,還是我可以以某種方式配置的可選功能?

注意:對於那些投票給PowerGUI答案的人來說,這是不正確的,因為它引用了錯誤版本的Visual Studio來解決這個問題。 如果您使用的是完整的IDE,而不是名為“Code”的新編輯器,則會很有幫助。

這是我想在VSCode中解決的第一個問題。 我沒有找到鍵入PowerShell命令的方法,但我找到了一種創建和運行PowerShell 任務的方法

在命令面板中鍵入,然后選擇“ 任務:配置任務運行器” 它將顯示為默認任務運行程序配置的json文件。

我用這個替換了內容

{
    "version": "0.1.0",
    "command": "PowerShell.exe",
    "isShellCommand": true,
    "args": [
        "-NoProfile",
        "Invoke-Build.ps1"
    ],
    "tasks": [
        {
            "taskName": "Build",
            "isBuildCommand": true,
            "showOutput": "always"
        },
        {
            "taskName": "Test",
            "isTestCommand": true,
            "showOutput": "always"
        },
        {
            "taskName": "Build, Test",
            "showOutput": "always"
        }
    ]
}

因此,在命令面板中,我可以選擇並運行我的預定義任務(構建,測試和組合構建,測試)。 我可以添加其他任務,並可能將它們綁定到一些熱鍵。 這不是我想在PowerShell的VSCode中擁有的,但對於預覽它至少是一些東西。

PS這只是我的第一個實驗,有點工作。 它不完美,更有可能。 這個json文件有很多配置參數,我還沒有嘗試過。

使用Visual Studio Code 0.10.1版,您可以運行和調試PowerShell。 這是我使用的示例launch.json:

{
    "version": "0.2.0",
     "configurations": [ 
        { 
            "name": "PowerShell", 
            "type": "PowerShell", 
            "program": "MyScript.ps1",
            "args": "-Verbose"
        } 
    ] 
}

不幸的是,我無法使args工作(有關更多詳細信息,請參閱: https//github.com/PowerShell/vscode-powershell/issues/24 )。 我遇到的另一個問題是Read-Host不能與VS Code一起使用(有關更多詳細信息,請參閱: https//github.com/PowerShell/vscode-powershell/issues/29 )。 絕對是一些粗糙的邊緣。

以下是如何配置Powershell任務以執行當前打開的.ps1文件而不具有任何Invoke-Build依賴關系:

{
    "version": "0.1.0",
    "command": "PowerShell.exe",
    "isShellCommand": true,
    "args": [
        "${file}"
    ],
    "tasks": [
        {
            "taskName": "Build",
            "isBuildCommand": true,
            "showOutput": "always"
        },
        {
            "taskName": "Test",
            "isTestCommand": true,
            "showOutput": "always"
        },
        {
            "taskName": "Build, Test",
            "showOutput": "always"
        }
    ]
}

注意:這只是羅馬答案的略微修改(我對他的答案的編輯被拒絕了)。

打開Debug視圖,在View Bar中從View菜單中選擇Debug ,或者按Ctrl + Shift + D.

Launch Configuration下拉列表中(如以下屏幕截圖所示),選擇Add Configuration ...

在此輸入圖像描述

launch.json配置將在編輯器中打開,鍵入PowerShell並選擇所需的調試配置,如以下屏幕截圖所示。

在此輸入圖像描述

保存launch.json文件,然后從Launch Configuration下拉列表中選擇所需的調試配置:

在此輸入圖像描述

現在,您可以通過VSCode調試PowerShell腳本。

腳本專家寫了一篇關於這個主題的全面的2部分博客文章,就像他們寫的其他內容一樣,如果你是VSCode和PowerShell的新手,那么值得一讀。

https://blogs.technet.microsoft.com/heyscriptingguy/2017/02/06/debugging-powershell-script-in-visual-studio-code-part-1/

https://blogs.technet.microsoft.com/heyscriptingguy/2017/02/13/debugging-powershell-script-in-visual-studio-code-part-2/

編輯:我知道這個問題已有幾年了,但在我找到有關如何在VSCode中設置PowerShell調試的最新信息之前,我遇到了它

從版本0.10.3開始,現在有一個由Microsoft編寫的PowerShell擴展,它將支持使用IntelliSense編寫PowerShell並在Visual Studio代碼中突出顯示

http://blogs.msdn.com/b/powershell/archive/2015/11/17/announcing-windows-powershell-for-visual-studio-code-and-more.aspx

至少在V1.4(2016年7月)中,這已經變得更加簡單了。

相關文檔可在此處找到: https//code.visualstudio.com/docs/editor/integrated-terminal

基本上你所做的就是在用戶設置的settings.json文件中添加一個條目。

添加以下值:

// 64-bit PowerShell if available, otherwise 32-bit
"terminal.integrated.shell.windows":"C:\\Windows\\sysnative\\WindowsPowerShell\\v1.0\\powershell.exe"

IMG:顯示用戶設置settings.json文件和顯示PowerShell提示的成功集成控制台:

IMG:顯示用戶設置settings.json文件和顯示PowerShell提示的成功集成控制台

有一種更簡單的方法來運行PowerShell,無需配置:

  1. 安裝Code Runner Extension
  2. 在文本編輯器中打開PowerShell代碼文件,然后使用快捷鍵Ctrl+Alt+N ,或按F1然后選擇/鍵入Run Code ,或右鍵單擊文本編輯器,然后單擊上下文菜單中的Run Code ,代碼將運行並且輸出將顯示在輸出窗口中。

此外,您可以選擇部分PowerShell代碼並運行代碼段。 很方便!

“集成終端”現已集成到Visual Studio Code中。 這是Windows中的PowerShell終端。 (可能是Linux / MacOS中的BASH)。 終端顯示在代碼編輯器底部的面板中,而不是命令行中。

鍵盤快捷鍵打開終端:CTRL +`

資料來源:

我在1.19.2版本中確認。 不確定該功能何時首次集成。

PowerGUI工具為Visual Studio提供了一個很好的界面。 此擴展的目標是將PowerShell開發引入Visual Studio。

這是它的樣子 -

在此輸入圖像描述

與IntelliSense一起,PowerGUI Visual Studio擴展提供了以下功能和更多功能,使其更易於使用PowerShell。

PowerShell文件和項目類型:您可以創建/編輯PowerShell代碼文件並將它們組裝到具有多個文件的項目中。 PowerShell代碼段:代碼段功能可用於PowerShell代碼。

PowerShell控制台窗口:此功能在Visual Studio IDE中提供PowerShell控制台環境。 這允許您運行命令或查看腳本輸出。 圖B顯示了在IDE中打開的控制台窗口。

PowerShell調試:此功能是我安裝擴展程序的原因; 它提供了一種在Visual Studio中調試腳本的方法。 這是在腳本中定位語法或邏輯問題的直接方法。

語法突出顯示和腳本分析:這些是PowerShell開發可用的更多Visual Studio功能。

在此輸入圖像描述

要安裝PowerGUI Visual Studio擴展,必須安裝PowerGUI,並注意每個產品的正確版本都已安裝。

在這里下載

在此輸入圖像描述

它還提供調試工具,這是我作為開發人員最喜歡的部分。

在此輸入圖像描述

謝謝!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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