Installieren von PowerShell unter Windows

Es gibt mehrere Möglichkeiten zum Installieren von PowerShell unter Windows. Jede Installationsmethode soll unterschiedliche Szenarios und Workflows unterstützen. Wählen Sie die Methode aus, der Ihren Anforderungen am besten entspricht.

  • Winget: empfohlene Methode zum Installieren von PowerShell auf Windows-Clients
  • MSI-Paket: beste Wahl für Windows Server- und Unternehmensbereitstellungsszenarien
  • ZIP-Paket: einfachste Möglichkeit zum „Querladen“ oder Installieren mehrerer Versionen
    • Wählen Sie diese Methode für Windows Nano Server-, Windows IoT- und ARM-basierte Systeme.
  • Globales .NET-Tool: eine gute Wahl für .NET-Entwickler, die andere globale Tools installieren und verwenden
  • Microsoft Store-Paket: eine einfache Möglichkeit der Installation für die gelegentliche Nutzung von PowerShell, allerdings mit Einschränkungen

Hinweis

Die Installationsbefehle in diesem Artikel beziehen sich auf die neueste stabile Version von PowerShell. Um eine andere Version von PowerShell zu installieren, passen Sie den Befehl an die benötigte Version an. Über die folgenden Links gelangen Sie zur Releaseseite für die jeweilige Version im PowerShell-Repository auf GitHub.

Downloadlinks zu jedem Paket finden Sie im Abschnitt Assets der Releaseseite. Der Abschnitt Assets ist möglicherweise zugeklappt, sodass Sie darauf klicken müssen, um ihn aufzuklappen.

Winget, der Windows-Paket-Manager, ist ein Befehlszeilentool, mit dem Benutzer Anwendungen auf Windows Client-Computern auffinden, installieren, aktualisieren, entfernen und konfigurieren können. Dieses Tool ist die Clientschnittstelle für den Windows-Paket-Manager-Dienst. Das Befehlszeilentool winget ist standardmäßig im Paket mit Windows 11 und modernen Versionen von Windows 10 als App-Installer enthalten.

Hinweis

Eine Liste der Systemanforderungen und Installationsanweisungen finden Sie in der Dokumentation zu winget. Winget kann derzeit nicht auf Windows-Servern ausgeführt werden.

Die folgenden Befehle können verwendet werden, um PowerShell mithilfe der veröffentlichten winget-Pakete zu installieren:

Suchen nach der neuesten Version von PowerShell

winget search Microsoft.PowerShell
Name               Id                           Version   Source
-----------------------------------------------------------------
PowerShell         Microsoft.PowerShell         7.4.2.0   winget
PowerShell Preview Microsoft.PowerShell.Preview 7.5.0.2   winget

Installieren von PowerShell oder der PowerShell-Vorschau mit dem Parameter id

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

Hinweis

Auf Windows-Systemen mit X86- oder X64-Prozessor wird durch winget das MSI-Paket installiert. Auf Systemen, die den Arm64-Prozessor verwenden, wird durch winget das Microsoft Store-Paket (MSIX) installiert. Weitere Informationen finden Sie unter Installieren über den Microsoft Store.

Installieren des MSI-Pakets

Laden Sie zum Installieren von PowerShell unter Windows mithilfe der folgenden Links das Installationspaket von GitHub herunter.

Doppelklicken Sie nach dem Download auf die Installationsdatei, und befolgen Sie die Anweisungen.

Das Installationsprogramm erstellt eine Verknüpfung im Windows-Startmenü.

  • Das Paket wird standardmäßig unter $env:ProgramFiles\PowerShell\<version> installiert
  • Sie können PowerShell über das Startmenü oder über $env:ProgramFiles\PowerShell\<version>\pwsh.exe starten

Hinweis

PowerShell 7.4 wird in ein neues Verzeichnis installiert und parallel mit Windows PowerShell 5.1 ausgeführt. PowerShell 7.4 ist ein direktes Upgrade, mit dem frühere Versionen von PowerShell entfernt werden. Vorschauversionen von PowerShell können zusammen mit anderen Versionen von PowerShell installiert werden.

  • PowerShell 7.4 wird in $env:ProgramFiles\PowerShell\7 installiert.
  • Der Ordner $env:ProgramFiles\PowerShell\7 wird $env:PATH hinzugefügt.

Wenn PowerShell 7.4 parallel mit anderen Versionen ausgeführt werden muss, installieren Sie die andere Version mit der Methode unter Installieren des ZIP-Pakets in einem anderen Ordner.

Unterstützung für Microsoft Update in PowerShell 7.2 und höher

PowerShell 7.2 und höher unterstützt Microsoft Update. Wenn Sie dieses Feature aktivieren, erhalten Sie die aktuellen PowerShell 7-Updates in Ihrem herkömmlichen Microsoft Update-Verwaltungsflow. Dies gilt sowohl für Windows Update for Business, WSUS und Microsoft Endpoint Configuration Manager als auch für das interaktive Microsoft Update-Dialogfeld in den Einstellungen.

Das PowerShell MSI-Paket enthält die folgenden Befehlszeilenoptionen:

  • USE_MU: Diese Eigenschaft verfügt über zwei mögliche Werte:
    • 1 (Standardeinstellung): abonniert Updates über Microsoft Update, WSUS oder Configuration Manager
    • 0: Automatische Updates über Microsoft Update, WSUS oder Configuration Manager werden nicht abonniert.
  • ENABLE_MU
    • 1 (Standardeinstellung): Verwendung von Microsoft Update für automatische Updates wird abonniert.
    • 0: Verwendung von Microsoft Update wird nicht abonniert.

Hinweis

Das Aktivieren von Updates wurde möglicherweise in einer vorherigen Installation oder manuellen Konfiguration festgelegt. Durch Verwendung von ENABLE_MU=0 werden die vorhandenen Einstellungen nicht entfernt. Diese Einstellung kann auch durch vom Administrator gesteuerte Gruppenrichtlinieneinstellungen außer Kraft gesetzt werden.

Weitere Informationen finden Sie in den häufig gestellten Fragen zu Microsoft Update für PowerShell.

Installieren des MSI-Pakets über die Befehlszeile

MSI-Pakete können über die Befehlszeile installiert werden, sodass Administratoren Pakete ohne Benutzerinteraktion bereitstellen können. Das MSI-Paket enthält die folgenden Eigenschaften zum Steuern der Installationsoptionen:

  • ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL – Diese Eigenschaft steuert die Option zum Hinzufügen des Elements Open PowerShell zum Kontextmenü im Windows-Explorer.
  • ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL – Diese Eigenschaft steuert die Option zum Hinzufügen des Elements Run with PowerShell zum Kontextmenü im Windows-Explorer.
  • ENABLE_PSREMOTING – Diese Eigenschaft steuert die Option zum Aktivieren von PowerShell-Remoting während der Installation.
  • REGISTER_MANIFEST – Diese Eigenschaft steuert die Option zum Registrieren des Manifests für Windows-Ereignisprotokollierung.
  • ADD_PATH: Diese Eigenschaft steuert die Option zum Hinzufügen von PowerShell zur PATH-Umgebungsvariable unter Windows.
  • DISABLE_TELEMETRY: Diese Eigenschaft steuert die Option zum Deaktivieren der Telemetriedaten von PowerShell, indem die POWERSHELL_TELEMETRY_OPTOUT-Umgebungsvariable festgelegt wird.
  • INSTALLFOLDER – Diese Eigenschaft steuert das Installationsverzeichnis. Der Standardwert ist $env:ProgramFiles\PowerShell\. Dies ist der Speicherort, an dem das Installationsprogramm den versionierten Unterordner erstellt. Sie können den Namen des versionierten Unterordners nicht ändern.
    • Für aktuelle Versionen ist der versionierte Unterordner 7
    • Für Vorschauversionen ist der versionierte Unterordner 7-preview

Das folgenden Beispiel zeigt, wie PowerShell mit allen aktivierten Installationsoptionen im Hintergrund installiert wird.

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

Eine vollständige Liste der Befehlszeilenoptionen für Msiexec.exe finden Sie unter Befehlszeilenoptionen.

Installieren des ZIP-Pakets

Binäre PowerShell ZIP-Archive werden zur Verfügung gestellt, um erweiterte Bereitstellungsszenarios zu ermöglichen. Laden Sie eines der folgenden ZIP-Archive von der Seite mit aktuellen Releases herunter.

Je nachdem, wie Sie die Datei herunterladen, müssen Sie die Blockierung der Datei mit dem Cmdlet Unblock-File aufheben. Entpacken Sie den Inhalt an den Speicherort Ihrer Wahl, und führen Sie pwsh.exe von dort aus. Anders als bei der Installation der MSI-Pakete erfolgt bei der Installation des ZIP-Archivs keine Prüfung auf Voraussetzungen. Damit Remoting über WSMan einwandfrei funktioniert, müssen die Voraussetzungen unbedingt erfüllt sein.

Installieren Sie mit dieser Methode die ARM-basierte Version von PowerShell auf Computern wie Microsoft Surface Pro X. Die besten Ergebnisse erzielen Sie, wenn Sie PowerShell im Ordner $env:ProgramFiles\PowerShell\7 installieren.

Installieren als globales .NET-Tool

Wenn Sie das .NET Core SDK bereits installiert haben, können Sie PowerShell als globales .NET-Tool installieren.

dotnet tool install --global PowerShell

Der .NET-Toolinstaller fügt $HOME\.dotnet\tools Ihrer $env:PATH-Umgebungsvariablen hinzu. Die aktuell ausgeführte Shell verfügt jedoch nicht über die aktualisierte Umgebungsvariable $env:PATH. Sie können PowerShell über eine neue Shell starten, indem Sie pwsh eingeben.

Installieren über den Microsoft Store

PowerShell kann über den Microsoft Store installiert werden. Sie finden das PowerShell-Release auf der Website von Microsoft Store oder in der Store-Anwendung unter Windows.

Vorteile des Microsoft Store-Pakets:

  • Direkt in Windows integrierte automatische Updates
  • Integration in andere Softwareverteilungsmechanismen wie Intune und Configuration Manager
  • Kann auf Windows-Systemen mit x86-, x64- oder Arm64-Prozessoren installiert werden

Bekannte Einschränkungen

Windows Store-Pakete werden standardmäßig in einer Anwendungssandbox ausgeführt, die den Zugriff auf einige Dateisystem- und Registrierungsspeicherorte virtualisiert. Änderungen an virtualisierten Datei- und Registrierungsspeicherorten werden außerhalb der Anwendungssandbox nicht übernommen.

Diese Sandbox blockiert alle Änderungen am Stammordner der Anwendung. Keine der in $PSHOME gespeicherten Konfigurationseinstellungen auf Systemebene kann geändert werden. Dies schließt die WSMAN-Konfiguration ein. Dadurch wird verhindert, dass Remotesitzungen eine Verbindung mit auf Store basierenden Installationen von PowerShell herstellen. Konfigurationen auf Benutzerebene und SSH-Remoting werden unterstützt.

Die folgenden Befehle benötigen Schreibzugriff auf $PSHOME. Diese Befehle werden in einer Microsoft Store-Instanz von PowerShell nicht unterstützt.

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

Weitere Informationen finden Sie unter Grundlegendes zur Funktionsweise von App-Paketen unter Windows.

Änderungen in PowerShell 7.2

Ab PowerShell 7.2 ist das PowerShell-Paket von der Datei- und Registrierungsvirtualisierung ausgenommen. Änderungen an virtualisierten Datei- und Registrierungsspeicherorten werden nun auch außerhalb der Anwendungssandbox übernommen. Änderungen am Stammordner der Anwendung werden jedoch weiterhin blockiert.

Wichtig

Sie müssen Windows Build 1903 oder höher ausführen, damit diese Ausnahme funktioniert.

Installieren einer Vorschauversion

Vorschauversionen von PowerShell 7 werden in $env:ProgramFiles\PowerShell\7-preview installiert, damit sie nebeneinander mit Nicht-Vorschauversionen von PowerShell ausgeführt werden können. PowerShell 7.4 ist das nächste Vorschaurelease.

Upgrade einer vorhandenen Installation

Für optimale Ergebnisse beim Upgrade sollten Sie dieselbe Installationsmethode verwenden, die Sie bei der ersten Installation von PowerShell verwendet haben. Wenn Sie nicht sicher sind, wie PowerShell installiert wurde, können Sie den Wert der Variablen $PSHOME überprüfen, die immer auf das Verzeichnis verweist, das PowerShell enthält, welches die aktuelle Sitzung ausführt.

  • Wenn der Wert $HOME\.dotnet\tools lautet, wurde PowerShell mit dem .NET Global-Tool installiert.
  • Wenn der Wert $Env:ProgramFiles\PowerShell\7 lautet, wurde PowerShell als MSI-Paket oder mit Winget auf einem Computer mit einem X86- oder x64-Prozessor installiert.
  • Wenn der Wert mit $Env:ProgramFiles\WindowsApps\ beginnt, wurde PowerShell als Microsoft Store-Paket oder mit Winget auf dem Computer mit einem ARM-Prozessor installiert.
  • Wenn der Wert etwas anderes ist, ist es wahrscheinlich, dass PowerShell als ZIP-Paket installiert wurde.

Wenn die Installation über das MSI-Paket erfolgt ist, finden Sie diese Informationen auch in der Systemsteuerung unter Programme und Features.

Um festzustellen, ob PowerShell mit Winget aktualisiert werden kann, führen Sie den folgenden Befehl aus:

winget list --name PowerShell --upgrade-available

Wenn ein Upgrade verfügbar ist, gibt die Ausgabe die neueste verfügbare Version an.

Hinweis

Beim Upgrade wird von PowerShell kein Upgrade von einer LTS-Version auf eine Nicht-LTS-Version durchgeführt. Es wird nur ein Upgrade auf die neueste LTS-Version durchgeführt, z. B. von 7.2.3 auf 7.2.19. Um ein Upgrade von einer LTS-Version auf eine neuere stabile Version oder die nächste LTS-Version durchzuführen, müssen Sie die neue Version mit der MSI für dieses Release installieren.

Wenn die installierte Version keine LTS-Version ist, führt PowerShell ein Upgrade auf die neueste stabile Version durch.

Bereitstellung unter Windows 10 IoT Enterprise

Bei Windows 10 IoT Enterprise ist Windows PowerShell bereits im Funktionsumfang enthalten, sodass PowerShell 7 bereitgestellt werden kann.

# Replace the placeholder information for the following variables:
$deviceip = '<device ip address'
$zipfile = 'PowerShell-7.4.2-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.4.2-win-arm64.zip

# Set up remoting to PowerShell 7
Set-Location .\PowerShell-7.4.2-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 .

Wenn Sie PowerShell Remoting einrichten, erhalten Sie eine Fehlermeldung, und die Verbindung mit dem Gerät wird getrennt. PowerShell muss WinRM neu starten. Jetzt können Sie eine Verbindung mit dem PowerShell 7-Endpunkt auf dem Gerät herstellen.


# 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.4.2

Bereitstellung unter Windows 10 IoT Core

Bei Windows 10 IoT Core wird Windows PowerShell hinzugefügt, wenn Sie das Feature IOT_POWERSHELL aufnehmen. Über dieses Feature kann PowerShell 7 bereitgestellt werden. Die oben beschriebenen Schritte für Windows 10 IoT Enterprise können auch für IoT Core ausgeführt werden.

Verwenden Sie zum Hinzufügen der aktuellen PowerShell-Version im Image den Befehl Import-PSCoreRelease. Mit diesem Befehl wird das Paket im Arbeitsbereich eingefügt und das Feature OPENSRC_POWERSHELL zu Ihrem Image hinzugefügt.

Hinweis

Bei der ARM64-Architektur wird Windows PowerShell nicht hinzugefügt, wenn Sie IOT_POWERSHELL einschließen. Daher funktioniert die ZIP-basierte Installation nicht. Sie müssen den Befehl Import-PSCoreRelease verwenden, um ihn im Image hinzuzufügen.

Bereitstellen auf Nano Server

Diese Anweisungen gehen davon aus, dass der Nano Server ein „monitorloses“ Betriebssystem ist, unter dem bereits eine Version von PowerShell ausgeführt wird. Weitere Informationen finden Sie in der Dokumentation zu Nano Server Image Builder.

PowerShell-Binärdateien können auf zwei verschiedene Arten bereitgestellt werden.

  1. Offline: Binden Sie die Nano Server-VHD ein, und entpacken Sie den Inhalt der ZIP-Datei an dem von Ihnen gewünschten Speicherort in dem eingebundenen Image.
  2. Online: Übertragen Sie die ZIP-Datei über eine PowerShell-Sitzung, und entpacken Sie sie an dem von Ihnen gewünschten Speicherort.

In beiden Fällen benötigen Sie das ZIP-Releasepaket für Windows 10 x64. Führen Sie die Befehle in einer „Administrator“-Instanz von PowerShell aus.

Offlinebereitstellung von PowerShell

  1. Verwenden Sie Ihr bevorzugtes ZIP-Hilfsprogramm, um das Paket in ein Verzeichnis im eingebundenen Nano Server-Image zu entpacken.
  2. Heben Sie die Bereitstellung des Images auf, und starten Sie es.
  3. Stellen Sie eine Verbindung mit der integrierten Instanz von Windows PowerShell her.
  4. Befolgen Sie die Anweisungen, um einen Remoting-Endpunkt mithilfe der „Andere Instanz-Methode“ zu erstellen.

Onlinebereitstellung von PowerShell

Stellen Sie PowerShell mithilfe der folgenden Schritte für Nano Server bereit.

# 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.4.2-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.4.2-win-x64.zip -DestinationPath 'C:\Program Files\PowerShell 7'

Befolgen Sie die Anweisungen, wenn Sie auf WSMan basierendes Remoting verwenden möchten, um einen Remoting-Endpunkt mithilfe der „Andere Instanz-Methode“ zu erstellen.

PowerShell-Remoting

PowerShell unterstützt das PowerShell-Remotingprotokoll (PSRP) über WSMan und SSH. Weitere Informationen finden Sie unter

Die folgenden Voraussetzungen müssen erfüllt sein, um PowerShell-Remoting über WSMan in älteren Versionen von Windows zu aktivieren.

  • Installieren Sie das Windows Management Framework (WMF) 5.1 (sofern erforderlich). Weitere Informationen zu WMF erhalten Sie in der WMF-Übersicht.
  • Universal C-Runtime muss unter Windows-Versionen vor Windows 10 installiert sein. Die Runtime ist über einen direkten Download oder Windows-Update verfügbar. Auf vollständig gepatchten Systemen ist dieses Paket bereits installiert.

Unterstützte Windows-Versionen

Die folgende Tabelle enthält eine Liste der PowerShell-Releases und der Windows-Versionen, unter denen sie unterstützt werden. Diese Versionen werden weiterhin unterstützt, bis entweder die Version von PowerShell das Ende des Supports erreicht oder die Version von Windows das Ende des Supports erreicht.

  • Das Symbol Unterstützt zeigt an, dass diese Version des Betriebssystems oder die PowerShell-Version weiterhin unterstützt wird.
  • Das Symbol Nicht mehr unterstützt zeigt an, dass diese Version von PowerShell unter dieser Version des Betriebssystems nicht mehr unterstützt wird.
  • Das Symbol Wird getestet zeigt an, dass die Tests von PowerShell auf diesem Betriebssystem noch nicht abgeschlossen sind.
  • Das Symbol Nicht unterstützt zeigt an, dass diese Version des Betriebssystems oder die PowerShell-Version nicht unterstützt wird.
  • Wird sowohl für die Version des Betriebssystems als auch für die Version von PowerShell das Symbol Unterstützt angezeigt, so wird diese Kombination aus Betriebssystem und PowerShell unterstützt.
Windows 7.2 (LTS-previous) 7.3 7.4 (LTS-current)
Unterstützt Windows Server 2016, 2019 oder 2022 Unterstützt Unterstützt Unterstützt
Unterstützt Windows Server Nano (1809 oder höher) Unterstützt Unterstützt Unterstützt
Unterstützt Windows 11 Unterstützt Unterstützt Unterstützt
Unterstützt Windows 10 1607 und höher Unterstützt Unterstützt Unterstützt

Hinweis

Die Unterstützung für eine bestimmte Version von Windows wird durch die Lebenszyklusrichtlinien des Microsoft-Supports bestimmt. Weitere Informationen finden Sie unter

PowerShell wird unter Windows für die folgenden Prozessorarchitekturen unterstützt.

Windows 7.2 (LTS-aktuell) 7.3 7.4 (LTS-current)
Windows Server 2016+ x64, x86 x64, x86 x64, x86
Windows Server Core 2016+ x64, x86 x64, x86 x64, x86
Nano Server Version 1803+ x64 x64 x64
Windows 11-Client x64, Arm64 x64, Arm64 x64, Arm64
Windows 10-Client x64, x86, Arm64 x64, x86, Arm64 x64, x86, Arm64

Sie können die von Ihnen verwendete Version mithilfe von winver.exe überprüfen.

Installationsunterstützung

Microsoft unterstützt die in diesem Dokument beschriebenen Installationsmethoden. Möglicherweise stehen andere Installationsmethoden von Drittanbietern aus anderen Quellen zur Verfügung. Auch wenn diese Tools und Methoden möglicherweise funktionieren, kann Microsoft sie nicht unterstützen.