Installera PowerShell i Windows

Det finns flera sätt att installera PowerShell i Windows. Varje installationsmetod är utformad för att stödja olika scenarier och arbetsflöden. Välj den metod som bäst passar dina behov.

  • MSI-paket – Det bästa valet för den dagliga användaren.
  • ZIP-paket – Det enklaste sättet att installera flera versioner eller använda i en CI/CD-pipeline. Det här är installationsmetoden för Windows Nano Server-, Windows IoT- och Arm-baserade system.
  • Globalt .NET-verktyg – Ett bra alternativ för .NET-utvecklare som installerar och använder andra globala verktyg.
  • Winget – För användare som föredrar att använda det nya Windows Package Manager verktyget.
  • Microsoft Store paket – Ett enkelt sätt att installera för informella PowerShell-användare men har begränsningar.

Anteckning

Installationskommandona i den här artikeln är för den senaste stabila versionen av PowerShell. Om du vill installera en annan version av PowerShell justerar du kommandot så att det matchar den version du behöver. Följande länkar leder till versionssidan för varje version på PowerShell-lagringsplatsen på GitHub.

Nedladdningslänkar för varje paket finns i avsnittet Tillgångar på sidan Version. Avsnittet Tillgångar kan vara komprimerat, så du kan behöva klicka för att expandera det.

Installera MSI-paketet

Om du vill installera PowerShell på Windows använder du följande länkar för att ladda ned installationspaketet från GitHub.

Dubbelklicka på installationsfilen när den har laddats ned och följ anvisningarna.

Installationsprogrammet skapar en genväg i Windows Start-menyn.

  • Som standard installeras paketet på $env:ProgramFiles\PowerShell\<version>
  • Du kan starta PowerShell via Start-menyn eller $env:ProgramFiles\PowerShell\<version>\pwsh.exe

Anteckning

PowerShell 7.2 installeras i en ny katalog och körs sida vid sida med Windows PowerShell 5.1. PowerShell 7.2 är en uppgradering på plats som ersätter PowerShell 7.0 och lägre.

  • PowerShell 7.2 är installerat på $env:ProgramFiles\PowerShell\7
  • Mappen $env:ProgramFiles\PowerShell\7 läggs till i $env:PATH
  • Mappar för tidigare utgivna versioner tas bort

Om du behöver köra PowerShell 7.2 sida vid sida med andra versioner använder du ZIP-installationsmetoden för att installera den andra versionen i en annan mapp.

Stöd för Microsoft Update i PowerShell 7.2

PowerShell 7.2 har stöd för Microsoft Update. När du aktiverar den här funktionen får du de senaste PowerShell 7-uppdateringarna i ditt traditionella Microsoft Update-hanteringsflöde (MU), oavsett om det är med Windows Update för företag, WSUS, SCCM eller den interaktiva MU-dialogrutan i Inställningar.

PowerShell 7.2 MSI-paketet innehåller följande kommandoradsalternativ:

  • USE_MU – Den här egenskapen har två möjliga värden:
    • 1 (standard) – Väljer att uppdatera via Microsoft Update, WSUS eller SCCM
    • 0 – Välj inte att uppdatera via Microsoft Update, WSUS eller SCCM
  • ENABLE_MU
    • 1 (standard) – Väljer att använda Microsoft Update för automatiska uppdateringar
    • 0 – Välj inte att använda Microsoft Update

Anteckning

Aktivering av uppdateringar kan ha angetts i en tidigare installation eller manuell konfiguration. Befintliga ENABLE_MU=0 inställningar tas inte bort med hjälp av . Dessutom kan den här inställningen åsidosättas av grupprincip som styrs av administratören.

Mer information finns i Vanliga frågor och svar om PowerShell Microsoft Update PowerShell.

Administrativ installation från kommandoraden

MSI-paket kan installeras från kommandoraden så att administratörer kan distribuera paket utan användarinteraktion. MSI-paketet innehåller följande egenskaper för att styra installationsalternativen:

  • ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL– Den här egenskapen styr alternativet för att lägga Open PowerShell till objektet på snabbmenyn i Windows Explorer.
  • ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL– Den här egenskapen styr alternativet för att lägga Run with PowerShell till objektet på snabbmenyn i Windows Explorer.
  • ENABLE_PSREMOTING – Den här egenskapen styr alternativet för att aktivera PowerShell-fjärrkommunikation under installationen.
  • REGISTER_MANIFEST– Den här egenskapen styr alternativet för att registrera Windows Event Logging-manifestet.

I följande exempel visas hur du installerar PowerShell tyst med alla installationsalternativ aktiverade.

msiexec.exe /package PowerShell-7.2.0-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1 USE_MU=1 ENABLE_MU=1

En fullständig lista över kommandoradsalternativ för Msiexec.exe finns i Kommandoradsalternativ.

Installera ZIP-paketet

PowerShell-binära ZIP-arkiv tillhandahålls för att aktivera avancerade distributionsscenarier. Ladda ned ett av följande ZIP-arkiv från den aktuella versionssidan.

Beroende på hur du laddar ned filen kan du behöva avblockera filen med hjälp av Unblock-File cmdleten . Packa upp innehållet till valfri plats och kör pwsh.exe därifrån. Till skillnad från att installera MSI-paketen kontrollerar inte installation av ZIP-arkivet krav. För att fjärrkommunikation via WSMan ska fungera korrekt måste du kontrollera att du har uppfyllt kraven.

Använd den här metoden för att installera den ARM-baserade versionen av PowerShell på datorer som Microsoft Surface Pro X. För bästa resultat installerar du PowerShell i mappen $env:ProgramFiles\PowerShell\7 till.

Installera som ett globalt .NET-verktyg

Om du redan har .NET Core SDK kan du installera PowerShell som ett globalt .NET-verktyg.

dotnet tool install --global PowerShell

Installationsprogrammet för dotnet-verktyget lägger $env:USERPROFILE\.dotnet\tools till i $env:PATH miljövariabeln. Gränssnittet som körs för närvarande har dock inte den uppdaterade $env:PATH . Du kan starta PowerShell från ett nytt gränssnitt genom att skriva pwsh .

Installera PowerShell med Winget

Winget, Windows Package Manager, är ett kommandoradsverktyg som gör att utvecklare kan identifiera, installera, uppgradera, ta bort och konfigurera program på Windows 10 datorer. Det här verktyget är klientgränssnittet för Windows Package Manager tjänsten.

Anteckning

Se winget-dokumentationen för en lista över systemkrav och installationsanvisningar.

Följande kommandon kan användas för att installera PowerShell med hjälp av de publicerade winget paketen:

Sök efter den senaste versionen av PowerShell

winget search Microsoft.PowerShell
Name               Id                           Version  Source
----------------------------------------------------------------
PowerShell         Microsoft.PowerShell         7.2.0.0  winget
Powershell Preview Microsoft.PowerShell.Preview 7.2.0.10 winget

Installera PowerShell eller Powershell Preview med id parametern

winget install --id Microsoft.Powershell --source winget
winget install --id Microsoft.Powershell.Preview --source winget

Installera från Microsoft Store

PowerShell 7.2 kan installeras från Microsoft Store. Du hittar PowerShell-versionen på Microsoft Store webbplats eller i Store-programmet i Windows.

Fördelar med Microsoft Store paket:

  • Automatiska uppdateringar som är inbyggda direkt i Windows
  • Integrerar med andra mekanismer för programvarudistribution som Intune och SCCM

Kända begränsningar

Som standard körs Windows Store-paket i en sandbox-miljö för program som virtualiserar åtkomst till vissa filsystem och registerplatser. Ändringar av virtualiserade fil- och registerplatser bevaras inte utanför programmets sandbox-miljö.

Den här sandbox-miljön blockerar alla ändringar i programmets rotmapp. Alla konfigurationsinställningar på systemnivå som $PSHOME lagras i kan inte ändras. Detta inkluderar WSMAN-konfigurationen. Detta förhindrar att fjärrsessioner ansluter till Store-baserade installationer av PowerShell. Konfigurationer på användarnivå och SSH-fjärrkommunikation stöds.

Följande kommandon måste skriva till $PSHOME . Dessa kommandon stöds inte i en Microsoft Store instans av PowerShell.

  • Register-PSSessionConfiguration
  • Update-Help -Scope AllUsers
  • Enable-ExperimentalFeature -Scope AllUsers
  • Set-ExecutionPolicy -Scope LocalMachine

Mer information finns i Förstå hur paketerade skrivbordsappar körs på Windows.

Ändringar för PowerShell 7.2

Från och med PowerShell 7.2 är PowerShell-paketet nu undantaget från fil- och registervirtualisering. Ändringar av virtualiserade fil- och registerplatser finns nu kvar utanför programmets sandbox-miljö. Ändringar i programmets rotmapp blockeras dock fortfarande.

Viktigt

Du måste köra på Windows version 1903 eller senare för att det här undantaget ska fungera.

Installera en förhandsversion

Förhandsversioner av PowerShell 7 installeras på så att de kan köras sida vid sida med andra versioner av PowerShell än $env:ProgramFiles\PowerShell\7-preview förhandsversioner. PowerShell 7.3 blir nästa förhandsversion.

Uppgradera en befintlig installation

För bästa resultat när du uppgraderar bör du använda samma installationsmetod som du använde när du installerade PowerShell för första gången. Varje installationsmetod installerar PowerShell på olika platser. Om du inte är säker på hur PowerShell installerades kan du jämföra den installerade platsen med paketinformationen i den här artikeln. Om du har installerat via MSI-paketet visas informationen i program- och Kontrollpanelen.

Distribuera på Windows 10 IoT Enterprise

Windows 10 IoT Enterprise levereras med Windows PowerShell, som vi kan använda för att distribuera PowerShell 7.

# Replace the placeholder information for the following variables:
$deviceip = '<device ip address'
$zipfile = 'PowerShell-7.2.0-win-Arm64.zip'
$downloadfolder = 'u:\users\administrator\Downloads'  # The download location is local to the device.
    # There should be enough  space for the zip file and the unzipped contents.

# Create PowerShell session to target device
Set-Item -Path WSMan:\localhost\Client\TrustedHosts $deviceip
$S = New-PSSession -ComputerName $deviceIp -Credential Administrator
# Copy the ZIP package to the device
Copy-Item $zipfile -Destination $downloadfolder -ToSession $S

#Connect to the device and expand the archive
Enter-PSSession $S
Set-Location u:\users\administrator\Downloads
Expand-Archive .\PowerShell-7.2.0-win-Arm64.zip

# Set up remoting to PowerShell 7
Set-Location .\PowerShell-7.2.0-win-Arm64
# Be sure to use the -PowerShellHome parameter otherwise it tries to create a new
# endpoint with Windows PowerShell 5.1
.\Install-PowerShellRemoting.ps1 -PowerShellHome .

När du ställer in PowerShell-fjärrkommunikation får du ett felmeddelande och kopplas bort från enheten. PowerShell måste starta om WinRM. Nu kan du ansluta till PowerShell 7-slutpunkten på enheten.


# Be sure to use the -Configuration parameter. If you omit it, you connect to Windows PowerShell 5.1
Enter-PSSession -ComputerName $deviceIp -Credential Administrator -Configuration PowerShell.7.2.0

Distribuera på Windows 10 IoT Core

Windows 10 IoT Core lägger Windows PowerShell när du inkluderar IOT_POWERSHELL-funktion, som vi kan använda för att distribuera PowerShell 7. Stegen som definieras ovan Windows 10 IoT Enterprise kan även följas för IoT Core.

Om du vill lägga till den senaste PowerShell-versionen i leveransavbildningen använder du kommandot Import-PSCoreRelease för att inkludera paketet i arbetsområde och lägga till OPENSRC_POWERSHELL-funktionen i avbildningen.

Anteckning

För ARM64-arkitektur Windows PowerShell inte när du inkluderar IOT_POWERSHELL. Därför fungerar inte den ZIP-baserade installationen. Du måste använda kommandot Import-PSCoreRelease för att lägga till det i avbildningen.

Distribuera på Nano Server

Dessa instruktioner förutsätter att Nano Server är ett "huvudlöst" operativsystem som har en version av PowerShell som redan körs på den. Mer information finns i dokumentationen om Nano Server Image Builder.

PowerShell-binärfiler kan distribueras med två olika metoder.

  1. Offline – Montera den virtuella hårddisken för Nano Server och packa upp innehållet i zip-filen på den valda platsen i den monterade bilden.
  2. Online – Överför zip-filen via en PowerShell-session och packa upp den på din valda plats.

I båda fallen behöver du Windows x64 ZIP-versionspaket. Kör kommandona i en "administratörs"-instans av PowerShell.

Offlinedistribution av PowerShell

  1. Använd ditt zip-verktyg för att packa upp paketet till en katalog i den monterade Nano Server-avbildningen.
  2. Demontera avbildningen och starta den.
  3. Anslut till den inbyggda instansen av Windows PowerShell.
  4. Följ instruktionerna för att skapa en fjärrkommunikationsslutpunkt med hjälp av "en annan instansteknik".

Onlinedistribution av PowerShell

Distribuera PowerShell till Nano Server med följande steg.

# Replace the placeholder information for the following variables:
$ipaddr = '<Nano Server IP address>'
$credential = Get-Credential # <An Administrator account on the system>
$zipfile = 'PowerShell-7.2.0-win-x64.zip'
# Connect to the built-in instance of Windows PowerShell
$session = New-PSSession -ComputerName $ipaddr -Credential $credential
# Copy the file to the Nano Server instance
Copy-Item $zipfile c:\ -ToSession $session
# Enter the interactive remote session
Enter-PSSession $session
# Extract the ZIP file
Expand-Archive -Path C:\PowerShell-7.2.0-win-x64.zip -DestinationPath 'C:\Program Files\PowerShell 7'

Om du vill ha WSMan-baserad fjärrkommunikation följer du anvisningarna för att skapa en fjärrkommunikationsslutpunkt med hjälp av "en annan instansteknik".

PowerShell-fjärranvändning

PowerShell stöder PowerShell Remoting Protocol (PSRP) över både WSMan och SSH. Mer information finns i:

Följande krav måste vara uppfyllda för att aktivera PowerShell-fjärrkommunikation via WSMan på äldre versioner av Windows.

  • Installera Windows Management Framework (WMF) 5.1 (vid behov). Mer information om WMF finns i WMF-översikt.
  • Installera Universal C Runtime på Windows versioner som Windows 10. Den är tillgänglig via direktnedladdning eller Windows Update. Fullständigt korrigerade system har redan det här paketet installerat.

Versioner av Windows som stöds

Följande tabell är en lista över PowerShell-versioner och de versioner Windows de stöds på. Dessa versioner stöds tills antingen versionen av PowerShell når supportens slut eller tills versionen av Windows når supportens slut.

  • En ✅ anger att versionen av operativsystemet eller PowerShell fortfarande stöds
  • En ❌ anger att versionen av operativsystemet eller PowerShell inte stöds
  • A 🟡 anger att versionen av PowerShell inte längre stöds på den versionen av operativsystemet
  • När både versionen av operativsystemet och versionen av PowerShell har ✅ stöds den kombinationen
Windows 7.0 (LTS) 7.1 7.2 (LTS-aktuell)
✅ Windows Server 2016, 2019 eller 2022
✅ Windows Server 2012 R2
✅ Windows Server Core (2012 R2 eller senare)
✅ Windows Server Nano (1809 eller senare)
❌ Windows Server 2012 🟡 🟡
❌ Windows Server 2008 R2 🟡 🟡
✅ Windows 11
✅ Windows 10 1607+
✅ Windows 8.1

Anteckning

Stöd för en specifik version av Windows bestäms av Microsoft Support livscykelprinciper. Mer information finns i:

PowerShell stöds på Windows för följande processorarkitekturer.

Windows 7.0 (LTS) 7.1 7.2 (LTS-aktuell)
Nano Server, version 1803+ x64, Arm32 x64 x64
Windows Server 2012 R2+ x64, x86 x64, x86 x64, x86
Windows Server Core 2012 R2+ x64, x86 x64, x86 x64, x86
Windows 10 eller 11-klient x64, x86 x64, x86, Arm64 x64, x86, Arm64
Windows 8.1-klient x64, x86 x64, x86 x64, x86

Du kan kontrollera vilken version du använder genom att köra winver.exe .

Installationsstöd

Microsoft stöder installationsmetoderna i det här dokumentet. Det kan finnas andra installationsmetoder från tredje part som är tillgängliga från andra källor. Även om dessa verktyg och metoder kan fungera kan Microsoft inte stödja dessa metoder.