Använda Visual Studio Code för PowerShell-utveckling
Visual Studio Code (VS Code) är en plattformsoberoende skriptredigerare av Microsoft. Tillsammans med PowerShell-tilläggetger det en omfattande och interaktiv skriptredigeringsupplevelse, vilket gör det enklare att skriva tillförlitliga PowerShell-skript. Visual Studio Code med PowerShell-tillägget är den rekommenderade redigeraren för att skriva PowerShell-skript.
Den stöder följande PowerShell-versioner:
- PowerShell 7.2 och senare (Windows, macOS och Linux)
- Windows PowerShell 5.1 (endast Windows) med .NET Framework 4.8
Not
Visual Studio Code är inte samma sak som Visual Studio.
Komma igång
Kontrollera att PowerShell finns i systemet innan du börjar. Moderna arbetsbelastningar i Windows, macOS och Linux finns på följande länkar:
Traditionella Windows PowerShell-arbetsbelastningar finns i Installera Windows PowerShell.
Viktig
Windows PowerShell ISE- är fortfarande tillgängligt för Windows. Den är dock inte längre under aktiv funktionsutveckling. ISE fungerar bara med PowerShell 5.1 och äldre. Som en komponent i Windows stöds det fortfarande officiellt för säkerhets- och högprioriterande servicekorrigeringar. Vi har inga planer på att ta bort ISE från Windows.
Installera VS Code och PowerShell-tillägget
Installera Visual Studio Code. Mer information finns i översikten Konfigurera Visual Studio Code-.
Det finns installationsanvisningar för varje plattform:
Installera PowerShell-tillägget.
- Starta VS Code-appen genom att skriva
code
i en konsol ellercode-insiders
om du har installerat Visual Studio Code Insiders. - Starta Snabböppning i Windows eller Linux genom att trycka på Ctrl+P. Tryck på Cmd+Ppå macOS.
- I Snabböppning skriver du
ext install powershell
och trycker på Retur. - Vyn för tilläggen öppnas i sidopanelen. Välj PowerShell-tillägget från Microsoft.
- Klicka på knappen Installera i PowerShell-tillägget från Microsoft.
- Efter installationen, om du ser knappen Installera ändras till Läs in, klicka på Läs in.
- Efter att VS Code har lästs in igen är du redo att redigera.
- Starta VS Code-appen genom att skriva
Om du till exempel vill skapa en ny fil klickar du på File > New. Om du vill spara den klickar du på Fil > Spara och anger sedan ett filnamn, till exempel HelloWorld.ps1
. Stäng filen genom att klicka på X
bredvid filnamnet.
Avsluta VS Code genom att Fil > Avsluta.
Installera PowerShell-tillägget på begränsade system
Vissa system är konfigurerade för att kräva validering av alla kodsignaturer. Du kan få följande fel:
Language server startup failed.
Det här problemet kan uppstå när PowerShells körningspolicy anges av Windows-grupppolicy. Om du vill godkänna PowerShell Editor Services manuellt och PowerShell-tillägget för VS Code öppnar du en PowerShell-prompt och kör följande kommando:
Import-Module $HOME\.vscode\extensions\ms-vscode.powershell*\modules\PowerShellEditorServices\PowerShellEditorServices.psd1
Du uppmanas att Vill du köra programvara från den här utgivaren som inte är betrodd? Skriv A
för att köra filen. Öppna sedan VS Code och kontrollera att PowerShell-tillägget fungerar korrekt. Om du fortfarande har problem med att komma igång, meddela oss i ett GitHub-ärende.
Välja en version av PowerShell som ska användas med tillägget
När PowerShell installeras sida vid sida med Windows PowerShell går det nu att använda en specifik version av PowerShell med PowerShell-tillägget. Den här funktionen tittar på några välkända sökvägar på olika operativsystem för att identifiera installationer av PowerShell.
Använd följande steg för att välja version:
- Öppna -kommandopaletten i Windows eller Linux med Ctrl+Skift+P. På macOS använder du Cmd+Shift+P.
- Sök efter Session.
- Klicka på PowerShell: Visa sessionsmenyn.
- Välj den version av PowerShell som du vill använda i listan.
Om du har installerat PowerShell på en icke-typisk plats kanske den inte visas från början i sessionsmenyn. Du kan utöka sessionsmenyn genom att lägga till egna anpassade sökvägar enligt beskrivningen nedan.
PowerShell-sessionsmenyn kan också nås från ikonen {}
längst ned till höger i statusfältet. Om du hovrar över eller väljer den här ikonen visas en genväg till sessionsmenyn och en liten fästnål. Om du väljer fästikonen läggs versionsnumret till i statusfältet. Versionsnumret är en genväg till sessionsmenyn som kräver färre klickningar.
Not
Om du fäster versionsnumret replikeras beteendet för tillägget i versioner av VS Code före 1.65. 1.65-versionen av VS Code ändrade API:erna som PowerShell-tillägget använder och standardiserade statusfältet för språktillägg.
Konfigurationsinställningar för Visual Studio Code
Om du inte är bekant med hur du ändrar inställningar i VS Code rekommenderar vi att du läser Visual Studio Code-inställningar dokumentation.
När du har läst dokumentationen kan du lägga till konfigurationsinställningar i settings.json
.
{
"editor.renderWhitespace": "all",
"editor.renderControlCharacters": true,
"files.trimTrailingWhitespace": true,
"files.encoding": "utf8bom",
"files.autoGuessEncoding": true
}
Om du inte vill att de här inställningarna ska påverka alla filtyper tillåter VS Code även konfigurationer per språk. Skapa en språkspecifik inställning genom att placera inställningar i ett [<language-name>]
fält. Till exempel:
{
"[powershell]": {
"files.encoding": "utf8bom",
"files.autoGuessEncoding": true
}
}
Tips
Mer information om filkodning i VS Code finns i Understanding file encoding. Se även Så här replikerar du ISE-upplevelsen i VS Code för andra tips om hur du konfigurerar VS Code för PowerShell-redigering.
Lägga till egna PowerShell-sökvägar i sessionsmenyn
Du kan lägga till andra körbara PowerShell-sökvägar i sessionsmenyn via inställningen Visual Studio Code: powershell.powerShellAdditionalExePaths
.
Du kan göra detta med hjälp av användargränssnittet:
- Från kommandopaletten söka efter och välj Öppna användarinställningar. Eller använd kortkommandot i Windows eller Linux Ctrl+,. På macOS använder du Cmd+,.
- I redigeraren Inställningar söker du efter PowerShell Ytterligare Exe-sökvägar.
- Klicka på Lägg till objekt.
- För Key (under Item) anger du val av namn för den här ytterligare PowerShell-installationen.
- För Value (under Value) anger du den absoluta sökvägen till själva körbara filen.
Du kan lägga till så många ytterligare sökvägar som du vill. De tillagda objekten visas i sessionsmenyn med den angivna nyckeln som namn.
Du kan också lägga till nyckel/värde-par i objektet powershell.powerShellAdditionalExePaths
i settings.json
:
{
"powershell.powerShellAdditionalExePaths": {
"Downloaded PowerShell": "C:/Users/username/Downloads/PowerShell/pwsh.exe",
"Built PowerShell": "C:/Users/username/src/PowerShell/src/powershell-win-core/bin/Debug/net6.0/win7-x64/publish/pwsh.exe"
},
}
Notera
Före version 2022.5.0 av tillägget var den här inställningen en lista över objekt med nödvändiga nycklar exePath
och versionName
. En icke-bakåtkompatibel ändring introducerades för att stödja konfiguration via GUI. Om du tidigare har konfigurerat den här inställningen konverterar du den till det nya formatet. Värdet som anges för versionName
är nu Key, och värdet som anges för exePath
är nu Value. Du kan göra det enklare genom att återställa värdet och använda inställningsgränssnittet.
Ange standardversionen av PowerShell genom att ange värdet powershell.powerShellDefaultVersion
till texten som visas i sessionsmenyn (texten som används för nyckeln):
{
"powershell.powerShellAdditionalExePaths": {
"Downloaded PowerShell": "C:/Users/username/Downloads/PowerShell/pwsh.exe",
},
"powershell.powerShellDefaultVersion": "Downloaded PowerShell",
}
När du har konfigurerat den här inställningen, starta om VS Code eller läs in det nuvarande VS Code-fönstret igen genom att skriva Developer: Reload Window
från kommandopaletten.
Om du öppnar sessionsmenyn ser du nu ytterligare PowerShell-installationer.
Tips
Om du skapar PowerShell från källan är det här ett bra sätt att testa din lokala version av PowerShell.
Felsökning med Visual Studio Code
Felsökning utan arbetsyta
I VS Code version 1.9 (eller senare) kan du felsöka PowerShell-skript utan att öppna mappen som innehåller PowerShell-skriptet.
- Öppna PowerShell-skriptfilen med File > Open File...
- Ange en brytpunkt – välj en rad och tryck sedan på F9
- Tryck på F5 för att börja felsöka
Du bör se fönstret Felsökningsåtgärder som gör att du kan bryta dig in i felsökningsprogrammet, stega, återuppta och sluta felsöka.
Felsökning av arbetsyta
Felsökning av arbetsytor refererar till felsökning av en mapp som du har öppnat från menyn Arkiv med Öppna mapp.... Den mapp som du öppnar är vanligtvis din PowerShell-projektmapp eller roten för Git-förvaret. Med felsökning av arbetsytor kan du definiera flera felsökningskonfigurationer förutom att bara felsöka den öppna filen.
Följ dessa steg för att skapa en felsökningskonfigurationsfil:
Öppna vyn Felsökning i Windows eller Linux genom att trycka på Ctrl+Skift+D. Tryck på Cmd+Shift+Dpå macOS.
Klicka på skapa en launch.json fil länk.
Från Välj miljö-prompten, välj PowerShell.
Välj vilken typ av felsökning du vill använda:
- Starta aktuell fil – Starta och felsöka filen i det aktiva redigeringsfönstret
- Starta skript – Starta och felsöka den angivna filen eller kommandot
- interaktiv session – Felsöka kommandon som körs från den integrerade konsolen
- Bifoga – Koppla felsökningsprogrammet till en PowerShell-värdprocess som körs
VS Code skapar en katalog och en fil .vscode\launch.json
i roten på arbetsytans mapp för att lagra felsökningskonfigurationen. Om dina filer finns i ett Git-repositorium vill du vanligtvis committa launch.json
-filen. Innehållet i launch.json
-filen är:
{
"version": "0.2.0",
"configurations": [
{
"type": "PowerShell",
"request": "launch",
"name": "PowerShell Launch (current file)",
"script": "${file}",
"args": [],
"cwd": "${file}"
},
{
"type": "PowerShell",
"request": "attach",
"name": "PowerShell Attach to Host Process",
"processId": "${command.PickPSHostProcess}",
"runspaceId": 1
},
{
"type": "PowerShell",
"request": "launch",
"name": "PowerShell Interactive Session",
"cwd": "${workspaceRoot}"
}
]
}
Den här filen representerar de vanliga felsökningsscenarierna. När du öppnar den här filen i redigeraren ser du knappen Lägg till konfiguration.... Du kan klicka på den här knappen om du vill lägga till fler PowerShell-felsökningskonfigurationer. En användbar konfiguration att lägga till är PowerShell: Starta skriptet. Med den här konfigurationen kan du ange en fil som innehåller valfria argument som används när du trycker på F5 oavsett vilken fil som är aktiv i redigeraren.
När felsökningskonfigurationen har upprättats kan du välja den konfiguration som du vill använda under en felsökningssession. Välj en konfiguration från listrutan för felsökningskonfiguration i verktygsfältet i Felsöka-vyn.
Felsökning av PowerShell-tillägget
Om du får problem med att använda VS Code för PowerShell-skriptutveckling kan du läsa felsökningsguiden för på GitHub.
Användbara resurser
Det finns några videor och blogginlägg som kan vara till hjälp för att komma igång med PowerShell-tillägget för VS Code:
Videor
- Använda Visual Studio Code som standardredigerare för PowerShell
- Visual Studio Code: Djupdykning i felsökning av PowerShell-skript
Blogginlägg
- PowerShell-tillägg
- Skriva och felsöka PowerShell-skript i Visual Studio Code
- Vägledning för felsökning i Visual Studio Code
- Felsöka PowerShell i Visual Studio Code
- Kom igång med PowerShell-utveckling i Visual Studio Code
- Redigeringsfunktioner i Visual Studio Code för PowerShell-utveckling – del 1
- Redigeringsfunktioner i Visual Studio Code för PowerShell-utveckling – del 2
- Felsökning av PowerShell-skript i Visual Studio Code – del 1
- Felsökning av PowerShell-skript i Visual Studio Code – del 2
Källkod för PowerShell-tilläggsprojekt
PowerShell-tilläggets källkod finns på GitHub-.
Om du är intresserad av att bidra är pull-begäranden mycket uppskattade. Följ med i utvecklardokumentation på GitHub för att komma igång.