PowerShell 7 RC veröffentlicht, das ist neu
Microsoft veröffentlicht eine neue Version der PowerShell-Skriptsprache der nächsten Generation. Interessante Benutzer können den PowerShell 7 Release Candidate erhalten. Es enthält eine Reihe neuer Funktionen und viele Fehlerbehebungen sowohl von der Community als auch vom PowerShell-Team.
PowerShell ist eine erweiterte Form der Eingabeaufforderung. Es wird mit einem riesigen Satz gebrauchsfertiger Cmdlets erweitert und bietet die Möglichkeit, .NET Framework/C# in verschiedenen Szenarien zu verwenden. Windows enthält ein GUI-Tool, PowerShell ISE, das das Bearbeiten und Debuggen von Skripts auf nützliche Weise ermöglicht.
PowerShell 7 ist das erste Befehlszeilen-Shell- und Skriptsprachenpaket basierend auf .NET Core 3.0. Es kann mit 90+% des Posteingangs von Windows kompatibel sein PowerShell-Module durch Nutzung von Änderungen in .NET Core 3.0, die viele APIs zurückbringen, die von Modulen benötigt werden, die auf .NET Framework basieren, damit sie mit .NET Core funktionieren Laufzeit.
Als erstes Long Term Servicing Release erwartet Microsoft im Januar die allgemeine Verfügbarkeit von PowerShell 7.
Zwischen dem Release Candidate und der allgemeinen Verfügbarkeit akzeptiert Microsoft nur kritische Fehlerkorrekturen und es werden keine neuen Funktionen hinzugefügt. Für diese Veröffentlichung, einige Experimentelle Funktionen wird als designstabil und nicht mehr als experimentell angesehen. Dies bedeutet, dass alle zukünftigen Designänderungen für diese Funktionen als Breaking Change angesehen werden.
Hauptmerkmale von PowerShell 7
- .NET Core 3.1 (LTS)
ForEach-Object -Parallel
- Windows-Kompatibilitäts-Wrapper
- Benachrichtigung über neue Version
- Neue Fehleransicht und
Get-Fehler
Cmdlet - Betreiber von Pipelineketten (
&&
und||
) - Ternärer Operator (
ein? b: c
) - Nullzuweisungs- und Koaleszenzoperatoren (
??
und??=
) - Plattformübergreifend
Invoke-DscResource
(Experimental) -
Out-GridView
,-Schaufenster
und andere Legacy-GUI-Cmdlets sind wieder unter Windows verfügbar
Neue Funktionen in PowerShell 7 RC
Breaking Changes
- Unterstützung für Update-Benachrichtigungen erstellen
LTS
und Standardkanäle (#11132)
Engine-Updates und -Fixes
- Verbesserungen in Haltepunkt-APIs für Remote-Szenarien (#11312)
- Behebung eines Lecks der PowerShell-Klassendefinition in einen anderen Runspace (#11273)
- Beheben Sie eine Regression in der Formatierung, die durch die
FirstOrDefault
primitiv hinzugefügt7.0.0-Vorschau1
(#11258) - Zusätzliche Microsoft-Module zum Nachverfolgen
PS7
Telemetrie (#10751) - Genehmigte Funktionen als nicht experimentell festlegen (#11303)
- Aktualisieren
ConciseView
benutzenZielobjekt
falls zutreffend (#11075) - Fix
NullReferenceException
inAbschlussVervollständiger
öffentliche Methoden (#11274) - Fehler bei der Überprüfung des Apartment-Thread-Status auf Nicht-Windows-Plattformen (#11301)
- Update-Einstellung
PSModulePath
um die Prozess- und Maschinenumgebungsvariablen zu verketten (#11276) - Stoßen
.NET Core
zu3.1.0
(#11260) - Erkennung von behoben
$PSHOME
vor dem$env: PFAD
(#11141)
Allgemeine Cmdlet-Updates und -Fixes
- Behebung eines Problems auf Raspbian zum Festlegen des Datums von Dateiänderungen in
UnixStat
Experimentelle Funktion (#11313) - Hinzufügen
-AsPlainText
zuConvertFrom-SecureString
(#11142) - Hinzugefügt
WindowsPS
Versionsprüfung fürWinCompat
(#11148) - Fehlerberichte in einigen behoben
WinCompat
Szenarien (#11259) - Nativen Binärresolver hinzufügen (#11032) (Danke @iSazonov!)
- Aktualisieren Sie die Berechnung der Zeichenbreite, um sie zu respektieren
CJK
Zeichen richtig (#11262) - Hinzufügen
Entsperren-Datei
für macOS (#11137) - Regression in beheben
Get-PSCallStack
(#11210) (Danke @iSazonov!) - Vermeiden Sie das automatische Laden der
Geplanter Job
Modul bei Verwendung von Job-Cmdlets (#11194) - Hinzufügen
Ausgabetyp
zuGet-Fehler
Cmdlet und Original erhaltenTypNamen
(#10856) - Null-Referenz in korrigieren
Unterstützt VirtualTerminal
Eigentum (#11105)
Code-Bereinigung
- Kommentar- und Elementtext ändern, um Microsoft-Standards zu erfüllen (#11304)
Tests
- Unzuverlässig machen
DSC
Test ausstehend (#11131)
Build- und Packaging-Verbesserungen
- Fix Nuget-Paketsignatur für koordinierte Paketerstellung (#11316)
- Abhängigkeiten von PowerShell Gallery und NuGet aktualisieren (#11323)
- Stoßen
Microsoft. ApplicationInsights
von2.11.0
zu2.12.0
(#11305) - Stoßen
Microsoft. CodeAnalyse. CSharp
von3.3.1
zu3.4.0
(#11265) - Aktualisiert Pakete für Debian 10 und 11 (#11236)
- Aktivieren Sie nur experimentelle Funktionen vor
RC
(#11162) - Aktualisieren Sie die macOS-Mindestversion (#11163)
- Stoßen
NJsonSchema
von10.0.27
zu10.0.28
(#11170)
Dokumentation und Hilfeinhalt
- Änderungsprotokolle in ein Protokoll pro Release umwandeln (#11165)
- Fix
FWLinks
für PowerShell 7 Online-Hilfedokumente (#11071)
PowerShell 7 ist ein „Go Live“-Release, was bedeutet, dass es bis zur Veröffentlichung von PowerShell 7 General Availability (GA) im nächsten Monat offiziell in der Produktion unterstützt wird.
Quelle: Microsoft