Migrieren von Windows PowerShell 5.1 zu PowerShell 7Migrating from Windows PowerShell 5.1 to PowerShell 7

PowerShell 7 wurde für Cloud-, lokale und Hybridumgebungen entwickelt und bietet Verbesserungen sowie neue Features.Designed for cloud, on-premises, and hybrid environments, PowerShell 7 is packed with enhancements and new features.

  • Parallele Installation und Ausführung mit Windows PowerShellInstalls and runs side-by-side with Windows PowerShell
  • Verbesserte Kompatibilität mit vorhandenen Windows PowerShell-ModulenImproved compatibility with existing Windows PowerShell modules
  • Neue Sprachfeatures wie ternäre Operatoren und ForEach-Object -ParallelNew language features, like ternary operators and ForEach-Object -Parallel
  • Verbesserte LeistungImproved performance
  • SSH-basiertes RemotingSSH-based remoting
  • Plattformübergreifende InteroperabilitätCross-platform interoperability
  • Unterstützung für Docker-ContainerSupport for Docker containers

PowerShell 7 funktioniert parallel mit Windows PowerShell, sodass Sie Editionen vor der Bereitstellung problemlos testen und vergleichen können.PowerShell 7 works side-by-side with Windows PowerShell letting you easily test and compare between editions before deployment. Die Migration erfolgt einfach, schnell und betriebssicherMigration is simple, quick, and safe.

Die folgenden Windows-Betriebssysteme unterstützen PowerShell 7:PowerShell 7 is supported on the following Windows operating systems:

  • Windows 8.1 und 10Windows 8.1 and 10
  • Windows Server 2012, 2012 R2, 2016, und 2019Windows Server 2012, 2012 R2, 2016, and 2019

PowerShell 7 lässt sich auch unter macOS und mehreren Linux-Distributionen ausführen.PowerShell 7 also runs on macOS and several Linux distributions. Eine Liste der unterstützten Betriebssysteme und Informationen zum Supportlebenszyklus finden Sie unter PowerShell-Supportlebenszyklus.For a list of supported operating systems and information about the support lifecycle, see the PowerShell Support Lifecycle.

Installieren von PowerShell 7Installing PowerShell 7

Aus Gründen der Flexibilität und zur Unterstützung der Anforderungen von IT- und DevOps-Mitarbeitern sowie Entwicklern stehen mehrere Optionen zur Installation von PowerShell 7 zur Verfügung.For flexibility and to support the needs of IT, DevOps engineers, and developers, there are several options available to install PowerShell 7. In den meisten Fällen können die Installationsoptionen auf die folgenden reduziert werden:In most cases, the installation options can be reduced to the following methods:

Hinweis

Das MSI-Paket kann mit Verwaltungsprodukten wie System Center Configuration Manager (SCCM) bereitgestellt und aktualisiert werden.The MSI package can be deployed and updated with management products such as System Center Configuration Manager (SCCM). Laden Sie die Pakete von der GitHub-Seite „Releases“ herunter.Download the packages from GitHub Release page.

Zum Bereitstellen des MSI-Pakets sind Administratorberechtigungen erforderlich.Deploying the MSI package requires Administrator permission. Das ZIP-Paket kann von beliebigen Benutzern bereitgestellt werden.The ZIP package can be deployed by any user. Das ZIP-Paket ist die einfachste Möglichkeit, PowerShell 7 zum Testen zu installieren, bevor eine vollständige Installation erfolgt.The ZIP package is the easiest way to install PowerShell 7 for testing, before committing to a full installation.

Parallele Nutzung von PowerShell 7 mit Windows PowerShell 5.1Using PowerShell 7 side-by-side with Windows PowerShell 5.1

PowerShell 7 ist für die parallele Nutzung mit Windows PowerShell 5.1 konzipiert.PowerShell 7 is designed to coexist with Windows PowerShell 5.1. Die folgenden Features stellen sicher, dass Ihre Investition in PowerShell geschützt und die Migration zu PowerShell 7 einfach ist.The following features ensure that your investment in PowerShell is protected and your migration to PowerShell 7 is simple.

  • Trennung von Installationspfad und Namen der ausführbaren DateiSeparate installation path and executable name
  • Trennung von PSModulePathSeparate PSModulePath
  • Getrennte Profile für jede VersionSeparate profiles for each version
  • Verbesserte ModulkompatibilitätImproved module compatibility
  • Neue Remoting-EndpunkteNew remoting endpoints
  • Unterstützung von GruppenrichtlinienGroup policy support
  • Getrennte EreignisprotokolleSeparate Event logs

Trennung von Installationspfad und Namen der ausführbaren DateiSeparate installation path and executable name

PowerShell 7 wird in ein neues Verzeichnis installiert und ermöglicht die parallele Ausführung mit Windows PowerShell 5.1.PowerShell 7 installs to a new directory, enabling side-by-side execution with Windows PowerShell 5.1.

Installationsspeicherorte nach Version:Install locations by version:

  • Windows PowerShell 5.1: $env:WINDIR\System32\WindowsPowerShell\v1.0Windows PowerShell 5.1: $env:WINDIR\System32\WindowsPowerShell\v1.0
  • PowerShell Core 6.x: $env:ProgramFiles\PowerShell\6PowerShell Core 6.x: $env:ProgramFiles\PowerShell\6
  • PowerShell 7: $env:ProgramFiles\PowerShell\7PowerShell 7: $env:ProgramFiles\PowerShell\7

Der neue Speicherort wird Ihrer Umgebungsvariablen PATH hinzugefügt, sodass Sie sowohl Windows PowerShell 5.1 als auch PowerShell 7 ausführen können.The new location is added to your PATH allowing you to run both Windows PowerShell 5.1 and PowerShell 7. Wenn Sie von PowerShell Core 6.x zu PowerShell 7 migrieren, wird PowerShell 6 entfernt und PATH ersetzt.If you're migrating from PowerShell Core 6.x to PowerShell 7, PowerShell 6 is removed and the PATH replaced.

In Windows PowerShell heißt die ausführbare Datei powershell.exe.In Windows PowerShell, the PowerShell executable is named powershell.exe. Ab Version 6 heißt die ausführbare Datei pwsh.exe.In version 6 and above, the executable is named pwsh.exe. Der neue Name vereinfacht die parallele Ausführung beider Versionen.The new name makes it easy to support side-by-side execution of both versions.

Trennung von PSModulePathSeparate PSModulePath

Standardmäßig werden Module in Windows PowerShell und PowerShell 7 an verschiedenen Speicherorten gespeichert.By default, Windows PowerShell and PowerShell 7 store modules in different locations. PowerShell 7 kombiniert diese Speicherorte in der Umgebungsvariablen $Env:PSModulePath.PowerShell 7 combines those locations in the $Env:PSModulePath environment variable. Wenn Sie ein Modul nach Name importieren, prüft PowerShell den von $Env:PSModulePath angegebenen Speicherort.When importing a module by name, PowerShell checks the location specified by $Env:PSModulePath. Dies ermöglicht PowerShell 7 das Laden von Core- und Desktop-Modulen.This allows PowerShell 7 to load both Core and Desktop modules.

InstallationsumfangInstall Scope Windows PowerShell 5.1Windows PowerShell 5.1 PowerShell 7.0PowerShell 7.0
PowerShell-ModulePowerShell modules $env:WINDIR\system32\WindowsPowerShell\v1.0\Modules $PSHOME\Modules
Vom Benutzer installierterUser installed
Geltungsbereich AllUsersAllUsers scope
$env:ProgramFiles\WindowsPowerShell\Modules $env:ProgramFiles\PowerShell\Modules
Vom Benutzer installierterUser installed
Geltungsbereich CurrentUserCurrentUser scope
$HOME\Documents\WindowsPowerShell\Modules $HOME\Documents\PowerShell\Modules

In den folgenden Beispielen sind die Standardwerte von $Env:PSModulePath für jede Version angegeben.The following examples show the default values of $Env:PSModulePath for each version.

  • Windows PowerShell 5.1:For Windows PowerShell 5.1:

    $Env:PSModulePath -split (';')
    
    C:\Users\<user>\Documents\WindowsPowerShell\Modules
    C:\Program Files\WindowsPowerShell\Modules
    C:\WINDOWS\System32\WindowsPowerShell\v1.0\Modules
    
  • PowerShell 7:For PowerShell 7:

    $Env:PSModulePath -split (';')
    
    C:\Users\<user>\Documents\PowerShell\Modules
    C:\Program Files\PowerShell\Modules
    C:\Program Files\PowerShell\7\Modules
    C:\Program Files\WindowsPowerShell\Modules
    C:\WINDOWS\System32\WindowsPowerShell\v1.0\Modules
    

Beachten Sie, dass PowerShell 7 die Windows PowerShell-Pfade und die PowerShell 7-Pfade enthält, um das automatische Laden von Modulen zu ermöglichen.Notice that PowerShell 7 includes the Windows PowerShell paths and the PowerShell 7 paths to provide autoloading of modules.

Hinweis

Zusätzliche Pfade sind möglicherweise vorhanden, wenn Sie die Umgebungsvariable PSModulePath geändert oder benutzerdefinierte Module oder Anwendungen installiert haben.Additional paths may exist if you have changed the PSModulePath environment variable or installed custom modules or applications.

Weitere Informationen finden Sie unter about_Environment_Variables in PSModulePath.For more information, see PSModulePath in about_Environment_Variables.

Weitere Informationen zu Modulen finden Sie unter about_Modules.For more information about Modules, see about_Modules.

Getrennte ProfileSeparate profiles

Ein PowerShell-Profil ist ein Skript, das beim Start von PowerShell ausgeführt wird.A PowerShell profile is a script that executes when PowerShell starts. Dieses Skript passt Ihre Umgebung durch Hinzufügen von Befehlen, Aliasen, Funktionen, Variablen, Modulen und PowerShell-Laufwerken an.This script customizes your environment by adding commands, aliases, functions, variables, modules, and PowerShell drives. Das Profilskript stellt diese Anpassungen in jeder Sitzung zur Verfügung, ohne dass sie manuell neu erstellt werden müssen.The profile script makes these customizations available in every session without having to manually recreate them.

Der Pfad zum Speicherort des Profils hat sich in PowerShell 7 geändert.The path to the location of the profile has changed in PowerShell 7.

  • In Windows PowerShell 5.1 lautet der Speicherort des Profils $HOME\Documents\WindowsPowerShell.In Windows PowerShell 5.1, the location of the profile is $HOME\Documents\WindowsPowerShell.
  • In PowerShell 7 lautet der Speicherort des Profils $HOME\Documents\PowerShell.In PowerShell 7, the location of the profile is $HOME\Documents\PowerShell.

Die Profildateinamen wurden ebenfalls geändert:The profile filenames have also changed:

PS> $PROFILE | Select-Object *Host* | Format-List

AllUsersAllHosts       : C:\Program Files\PowerShell\7\profile.ps1
AllUsersCurrentHost    : C:\Program Files\PowerShell\7\Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts    : C:\Users\<user>\Documents\PowerShell\profile.ps1
CurrentUserCurrentHost : C:\Users\<user>\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

Weitere Informationen finden Sie unter about_Profiles.For more information about_Profiles.

Kompatibilität von PowerShell 7 mit Windows PowerShell 5.1-ModulenPowerShell 7 compatibility with Windows PowerShell 5.1 modules

Die meisten Module, die Sie in Windows PowerShell 5.1 verwenden, funktionieren bereits mit PowerShell 7, einschließlich Azure PowerShell und Active Directory.Most of the modules you use in Windows PowerShell 5.1 already work with PowerShell 7, including Azure PowerShell and Active Directory. Wir arbeiten weiterhin mit anderen Teams zusammen, um native PowerShell 7-Unterstützung für weitere Module wie Microsoft Graph, Office 365 und andere hinzuzufügen.We're continuing to work with other teams to add native PowerShell 7 support for more modules including Microsoft Graph, Office 365, and others. Die aktuelle Liste der unterstützten Module finden Sie unter Kompatibilität von PowerShell 7-Modulen.For the current list of supported modules, see PowerShell 7 module compatibility.

Hinweis

Unter Windows haben wir außerdem den Schalter UseWindowsPowerShell zu Import-Module hinzugefügt, um Benutzern mit inkompatiblen Modulen den Umstieg auf PowerShell 7 zu erleichtern.On Windows, we've also added a UseWindowsPowerShell switch to Import-Module to ease the transition to PowerShell 7 for those using incompatible modules. Weitere Informationen zu dieser Funktionalität finden Sie unter about_Windows_PowerShell_Compatibility.For more information on this functionality, see about_Windows_PowerShell_Compatibility.

PowerShell-RemotingPowerShell Remoting

PowerShell-Remoting ermöglicht Ihnen, jeden Windows PowerShell-Befehl auf einem oder mehreren Remotecomputern ausführen.PowerShell remoting lets you run any PowerShell command on one or more remote computers. Sie können dauerhafte Verbindungen herstellen, interaktive Sitzungen starten und Skripts auf Remotecomputern ausführen.You can establish persistent connections, start interactive sessions, and run scripts on remote computers.

WS-Management-RemotingWS-Management remoting

Bis Windows PowerShell 5.1 wird für die Verbindungsaushandlung und den Datentransport das WSMAN-Protokoll (WS-Management) verwendet.Windows PowerShell 5.1 and below use the WS-Management (WSMAN) protocol for connection negotiation and data transport. WinRM (Windows Remote Management) verwendet das WSMAN-Protokoll.Windows Remote Management (WinRM) uses the WSMAN protocol. Wenn WinRM aktiviert wurde, verwendet PowerShell 7 für Remoteverbindungen den vorhandenen Windows PowerShell 5.1-Endpunkt namens Microsoft.PowerShell.If WinRM has been enabled, PowerShell 7 uses the existing Windows PowerShell 5.1 endpoint named Microsoft.PowerShell for remoting connections. Um PowerShell 7 so zu aktualisieren, dass es seinen eigenen Endpunkt einbezieht, führen Sie das Cmdlet Enable-PSRemoting aus.To update PowerShell 7 to include its own endpoint, run the Enable-PSRemoting cmdlet. Informationen zum Herstellen einer Verbindung mit bestimmten Endpunkten finden Sie unter WS-Management-Remoting in PowerShell Core.For information about connecting to specific endpoints, see WS-Management Remoting in PowerShell Core

Um Windows PowerShell-Remoting zu verwenden, muss der Remotecomputer für die Remoteverwaltung konfiguriert sein.To use Windows PowerShell remoting, the remote computer must be configured for remote management. Weitere Informationen und Anweisungen hierzu finden Sie unter Informationen zu Remoteanforderungen.For more information, including instructions, see About Remote Requirements.

Weitere Informationen zum Arbeiten mit Remoteverbindungen finden Sie unter About Remote (Informationen zu Remotebefehlen).For more information about working with remoting, see About Remote

SSH-basiertes RemotingSSH-based remoting

SSH-basiertes Remoting wurde in PowerShell 6.x hinzugefügt, um andere Betriebssysteme zu unterstützen, die keine nativen Windows-Komponenten wie WinRM verwenden können.SSH-based remoting was added in PowerShell Core 6.x to support other operating systems that can't use Windows native components like WinRM. SSH-Remoting erstellt einen PowerShell-Hostprozess als SSH-Subsystem auf dem Zielcomputer.SSH remoting creates a PowerShell host process on the target computer as an SSH subsystem. Einzelheiten und Beispiele zum Einrichten von SSH-basiertem Remoting unter Windows und Linux finden Sie unter: PowerShell-Remoting über SSH.For details and examples on setting up SSH-based remoting on Windows or Linux, see: PowerShell remoting over SSH.

Hinweis

Der PowerShell-Katalog (PSGallery) enthält ein Modul und ein Cmdlet, mit dem SSH-basiertes Remoting automatisch konfiguriert kann.The PowerShell Gallery (PSGallery) contains a module and cmdlet that automatically configures SSH-based remoting. Laden Sie das Modul Microsoft.PowerShell.RemotingTools aus PSGallery herunter, installieren Sie es, und führen Sie das Cmdlet Enable-SSH aus.Install the Microsoft.PowerShell.RemotingTools module from the PSGallery and run the Enable-SSH cmdlet.

Die Cmdlets New-PSSession, Enter-PSSession und Invoke-Command weisen neue Parametersätze zur Unterstützung von SSH-Verbindungen auf.The New-PSSession, Enter-PSSession, and Invoke-Command cmdlets have new parameter sets to support SSH connections.

[-HostName <string>]  [-UserName <string>]  [-KeyFilePath <string>]

Um eine Remotesitzung zu erstellen, geben Sie den Zielcomputer mit dem Parameter HostName an, und fügen Sie mit UserName den Benutzernamen hinzu.To create a remote session, specify the target computer with the HostName parameter and provide the user name with UserName. Wenn Sie die Cmdlets interaktiv ausführen, werden Sie zur Kennworteingabe aufgefordert.When running the cmdlets interactively, you're prompted for a password.

Enter-PSSession -HostName <Computer> -UserName <Username>

Wenn Sie den Parameter HostName verwenden, geben Sie alternativ die Informationen zum Benutzernamen gefolgt vom At-Zeichen (@) und Computernamen an.Alternatively, when using the HostName parameter, provide the username information followed by the at sign (@), followed by the computer name.

Enter-PSSession -HostName <Username>@<Computer>

Sie können die SSH-Schlüsselauthentifizierung auch mithilfe einer privaten Schlüsseldatei und des Parameters KeyFilePath einrichten.You may set up SSH key authentication using a private key file with the KeyFilePath parameter. Weitere Informationen finden Sie unter OpenSSH-Schlüsselverwaltung.For more information, see OpenSSH Key Management.

Unterstützung von GruppenrichtlinienGroup Policy supported

PowerShell enthält Gruppenrichtlinieneinstellungen, die Ihnen helfen, einheitliche Optionswerte für Server in einer Unternehmensumgebung festzulegen.PowerShell includes Group Policy settings to help you define consistent option values for servers in an enterprise environment. Dies umfasst Folgendes:These settings include:

  • Konfiguration der Konsolensitzung: Legt einen Konfigurationsendpunkt fest, an dem PowerShell ausgeführt wird.Console session configuration: Sets a configuration endpoint in which PowerShell is run.
  • Modulprotokollierung aktivieren: Legt die Eigenschaft LogPipelineExecutionDetails von Modulen fest.Turn on Module Logging: Sets the LogPipelineExecutionDetails property of modules.
  • Protokollierung von PowerShell-Skriptblöcken: Aktiviert die ausführliche Protokollierung aller PowerShell-Skripts.Turn on PowerShell Script Block Logging: Enables detailed logging of all PowerShell scripts.
  • Skriptausführung aktivieren: Legt die PowerShell-Ausführungsrichtlinie fest.Turn on Script Execution: Sets the PowerShell execution policy.
  • PowerShell-Aufzeichnung aktivieren: ermöglicht die Erfassung der Ein- und Ausgabe von PowerShell-Befehlen in textbasierten Transkripten.Turn on PowerShell Transcription: enables capturing of input and output of PowerShell commands into text-based transcripts.
  • Standardquellpfad für "Update-Help" festlegen: Legt die Quelle für die aktualisierbare Hilfe auf ein Verzeichnis und nicht auf das Internet fest.Set the default source path for Update-Help: Sets the source for Updatable Help to a directory, not the Internet.

Weitere Informationen finden Sie unter about_Group_Policy_Settings.For more information, see about_Group_Policy_Settings.

PowerShell 7 bietet Gruppenrichtlinienvorlagen und in $PSHOME ein Installationsskript.PowerShell 7 includes Group Policy templates and an installation script in $PSHOME.

Gruppenrichtlinientools verwenden administrative Vorlagendateien (.admx, .adml), um Richtlinieneinstellungen auf der Benutzeroberfläche aufzufüllen.Group Policy tools use administrative template files (.admx, .adml) to populate policy settings in the user interface. Dies ermöglicht Administratoren die Verwaltung registrierungsbasierter Richtlinieneinstellungen.This allows administrators to manage registry-based policy settings. Das Skript InstallPSCorePolicyDefinitions.ps1 installiert administrative PowerShell Core-Vorlagen auf dem lokalen Computer.The InstallPSCorePolicyDefinitions.ps1 script installs PowerShell Core Administrative Templates on the local machine.

Get-ChildItem -Path $PSHOME -Filter *Core*Policy*
    Directory: C:\Program Files\PowerShell\7

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a---           2/27/2020 12:38 AM          15861 InstallPSCorePolicyDefinitions.ps1
-a---           2/27/2020 12:28 AM           9675 PowerShellCoreExecutionPolicy.adml
-a---           2/27/2020 12:28 AM           6201 PowerShellCoreExecutionPolicy.admx

Getrennte EreignisprotokolleSeparate Event Logs

Windows PowerShell und PowerShell 7 protokollieren Ereignisse in getrennten Ereignisprotokollen.Windows PowerShell and PowerShell 7 log events to separate event logs. Verwenden Sie den folgenden Befehl, um eine Liste der PowerShell-Protokolle abzurufen.Use the following command to get a list of the PowerShell logs.

Get-WinEvent -ListLog *PowerShell*

Weitere Informationen finden Sie unter about_Logging_Windows.For more information, see about_Logging_Windows.

Verbesserte Bearbeitungsumgebung in Visual Studio CodeImproved editing experience with Visual Studio Code

Visual Studio Code (VS Code) mit der PowerShell-Erweiterung ist die unterstützte Skriptumgebung für PowerShell 7.Visual Studio Code (VSCode) with the PowerShell Extension is the supported scripting environment for PowerShell 7. Die Windows PowerShell Integrated Scripting Environment (ISE) unterstützt nur Windows PowerShell.The Windows PowerShell Integrated Scripting Environment (ISE) only supports Windows PowerShell.

Die aktualisierte PowerShell-Erweiterung umfasst Folgendes:The updated PowerShell extension includes:

  • Neuen ISE-KompatibilitätsmodusNew ISE compatibility mode
  • PSReadLine in der integrierten Konsole, einschließlich Syntaxhervorhebung, mehrzeilige Bearbeitung und RückwärtssuchePSReadLine in the Integrated Console, including syntax highlighting, multi-line editing, and back search
  • Stabilitäts- und LeistungsverbesserungenStability and performance improvements
  • Neue CodeLens-IntegrationNew CodeLens integration
  • Verbesserte automatische PfadvervollständigungImproved path auto-completion

Um den Umstieg auf Visual Studio Code zu erleichtern, verwenden Sie in der Befehlspalette die Funktion ISE-Modus aktivieren.To make the transition to Visual Studio Code easier, use the Enable ISE Mode function available in the Command Palette. Über diese Option wird auf ein Layout im ISE-Stil umgestellt.This function switches VSCode into an ISE-style layout. Das Layout im ISE-Stil bietet Ihnen alle neuen Features und Funktionen von PowerShell in einer vertrauten Benutzerumgebung.The ISE-style layout gives you all the new features and capabilities of PowerShell in a familiar user experience.

Um auf das neue ISE-Layout umzustellen, drücken Sie STRG+UMSCHALT+P, um die Befehlspalette zu öffnen. Geben Sie PowerShell ein, und wählen Sie folgende Option aus: PowerShell: ISE-Modus aktivieren.To switch to the new ISE layout, press Ctrl+Shift+P to open the Command Palette, type PowerShell and select PowerShell: Enable ISE Mode.

Um das Layout auf das Originallayout festzulegen, öffnen Sie die Befehlspalette, und wählen Sie folgende Option aus: PowerShell: ISE-Modus deaktivieren (Standard wiederherstellen).To set the layout to the original layout, open the Command Palette, select PowerShell: Disable ISE Mode (restore to defaults).

Ausführliche Informationen zum Anpassen des Layouts von Visual Studio Code an ISE finden Sie unter Replizieren der ISE-Benutzeroberfläche in Visual Studio Code.For details about customizing the VSCode layout to ISE, see How to Replicate the ISE Experience in Visual Studio Code

Hinweis

Es ist nicht geplant, die ISE mit neuen Features zu aktualisieren.There no plans to update the ISE with new features. Die ISE ist jetzt in den neuesten Versionen von Windows 10 und Windows Server ein vom Benutzer deinstallierbares Feature.The ISE is now a user-uninstallable feature in the latest versions of Windows 10 and Windows Server. Es ist nicht geplant, die ISE dauerhaft zu entfernen.There are no plans to permanently remove the ISE. Das PowerShell-Team und seine Partner konzentrieren sich auf die Verbesserung der Skripterstellung in der PowerShell-Erweiterung für Visual Studio Code.The PowerShell Team and its partners are focused on improving the scripting experience in the PowerShell extension for Visual Studio Code.

Nächste SchritteNext Steps

Mit dem Wissen zur effektiven Migration jetzt PowerShell 7 installieren!Armed with the knowledge to effectively migrate, install PowerShell 7 now!