Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
PowerShell 7.6-preview.5 enthält die folgenden Features, Updates und bahnbrechende Änderungen. PowerShell 7.6 basiert auf .NET 9.0.101 GA-Version.
Eine vollständige Liste der Änderungen finden Sie im CHANGELOG- im GitHub-Repository.
Aktualisierte Module
PowerShell 7.6-preview.5 enthält die folgenden aktualisierten Module:
- Microsoft.PowerShell.PSResourceGet v1.1.0
- PSReadLine v2.4.4-beta4
- Microsoft.PowerShell.ThreadJob v2.2.0
- ThreadJob v2.1.0
Der ThreadJob wurde in das Modul "Microsoft.PowerShell.ThreadJob " umbenannt. Es gibt keinen Unterschied in der Funktionalität des Moduls. Um die Abwärtskompatibilität für Skripts sicherzustellen, die den alten Namen verwenden, ist das ThreadJob v2.1.0-Modul ein Proxymodul, das auf microsoft.PowerShell.ThreadJob v2.2.0 verweist.
Aktuelle Änderungen
- Korrigieren
WildcardPattern.Escape, um einzelne Backticks richtig zu maskieren (#25211) (Danke @ArmaanMcleod!) - Parameter
-ChildPathinstring[]für das Cmdlet umwandeln (Join-Path) (Danke @ArmaanMcleod!)) - Entfernen des nachfolgenden Leerzeichens aus dem Namen der Ereignisquelle (#24192) (Danke) @MartinGC94!)
Verbesserungen bei der TAB-Vervollständigung
- Verwenden Sie den Parameter
HelpMessagefür Tooltip bei der Parametervervollständigung (#25108) (Danke @jborean93!)) - Entfernen doppelter Module aus Abschlussergebnissen (#25538) (Danke @MartinGC94!)
- Hinzufügen der Vervollständigung für Variablen, die in
ArrayLiteralAstundParenExpressionAstzugewiesen wurden (#25303) (Danke @MartinGC94!)) - Beheben Sie die Tab-Vervollständigung für Umgebungs-/Funktionsvariablen (#25346) (Danke @jborean93!)
- Aktualisieren Sie den Blocktyp "Benannt" und "Anweisungstyp", um "AssignmentStatements" und "Increment/Decrement"-Operatoren nicht als Teil des Ausgabeergebnisses (#21137) (Danke) zu berücksichtigen. @MartinGC94!)
- Füge
-PropertyTypeArgument-Vervollständiger fürNew-ItemPropertyhinzu (#21117) (Danke @ArmaanMcleod!) - Hinzufügen der Unterstützung für einfache/doppelte Anführungszeichen für
-NounParameter fürGet-Command(#24977) (Danke an @ArmaanMcleod!)) - Hinzufügen von Abschlussunterstützung für einfache/doppelte Anführungszeichen beim Parameter
-PSEditionfürGet-Module(#24971) (Danke @ArmaanMcleod!)). - Konvertieren von InvalidCommandNameCharacters in AnalysisCache zu
SearchValues<char>für eine effizientere Zeichensuche (#24880) (Danke @ArmaanMcleod!)) - Konvertieren Sie s_charactersRequiringQuotes in "Completion Completers" in
SearchValues<char>für eine effizientere Zeichensuche (#24879) (Danke @ArmaanMcleod!)) - Aktualisieren Sie
IndexOfAny()Aufrufe mit ungültigem Pfad-/Dateinamen aufSearchValues<char>für eine effizientere Zeichensuche ([#24896][24896]) (Danke @ArmaanMcleod!)) - Ersetze das
char[]-Array inCompletionRequiresQuotesdurch den zwischengespeichertenSearchValues<char>(#24907) (Danke @ArmaanMcleod!)) - Hinzufügen der Anführungszeichenbehandlung in
Verb,StrictModeVersion,ScopeundPropertyTypeArgument Completers mit einer einzigen Hilfsmethode (#24839) (Danke @ArmaanMcleod!)) - Behebung des Freigabeabschlusses mit Anbieter und Leerzeichen (#19440) (Danke @MartinGC94!)
- Verbessern der Variablentyp-Ableitung (#19830) (Danke @MartinGC94!)
- Hinzufügen von QuickInfos für Hashtable-Schlüsselvervollständigen (#17864) (Vielen Dank @MartinGC94!)
- Verbessern der Typinferenz von Parametern in klassischen Funktionen (#25172) (Danke @MartinGC94!)
- Verbesserung der Ableitung des Zuweisungstyps (#21143) (Danke @MartinGC94!)
- Ausschließen von OutVariable-Zuordnungen innerhalb desselben
CommandAst, wenn Variablen abgeleitet werden (#25224) (Dank an @MartinGC94!)) - Korrektur der Parametervervollständigung bei Fehlschlagen von Skriptanforderungen (#17687) (Danke an @MartinGC94!)
- Verbesserung der Vervollständigung für Attributargumente (#25129) (Danke @MartinGC94!).
- Behebung der Fertigstellung, die auf Pseudobindung in Skriptblöcken (#25122, Danke) basiert @MartinGC94!)
- Schließen Sie keine doppelten Befehlsnamen ab (#21113). Vielen Dank. @MartinGC94!)
- Hinzufügen der Vervollständigung für Variablen, die durch Befehlsumleitung (#25104) zugewiesen wurden (Danke) @MartinGC94!)
- Korrigieren Sie
TypeName.GetReflectionType(), damit es funktioniert, wenn dieTypeName-Instanz eine generische Typdefinition innerhalb einesGenericTypeName(#24985) darstellt. - Aktualisieren Sie die Vervollständigung der Variablen-/Eigenschaftszuweisung, sodass sie auf Typinferenz zurückgreifen kann ( #21134 ) (Danke). @MartinGC94!)
- Umgang mit der Typinferenz für weitergeleitete Befehle (#21131) (Danke) @MartinGC94!)
- Verwenden Sie
Get-Helpden Ansatz, um Dateien mit dem richtigen Gebietsschema für Fertigstellungen (about_*.help.txt) zu finden (Danke@MartinGC94!) - Beheben des Abschlusses von Variablen, die in Do-Schleifen zugewiesen sind (#25076) (Danke @MartinGC94!)
- Korrigieren des Abschlusses von Anbieterpfaden, wenn ein Pfad sich selbst anstelle seiner untergeordneten Elemente ausgibt (#24755) (Danke @MartinGC94!))
- Aktivieren der Fertigstellung von bereichsbezogenen Variablen ohne Angabe des Bereichs (#20340) (Danke @MartinGC94!)
- Behebung eines Problems mit unvollständigen Ergebnissen beim Vervollständigen von Pfaden mit Wildcards in Nicht-Dateisystemanbietern (#24757) (Danke @MartinGC94!))
Cmdlet-Verbesserungen
- Beheben Sie Out-GridView, indem Sie die Verwendung veralteter BinaryFormatter durch benutzerdefinierte Implementierung (#25497) (Danke) ersetzen. @mawosoft!)
- Verbesserung des ausführlichen und Debug-Messaging auf der Protokollierungsebene in Web-Cmdlets (#25510) (@JustinGrote!) Danke)
- Verbessern der Debugprotokollierung von Web-Cmdlet-Anforderung und -Antwort (#25479) (Danke @JustinGrote!)
- Fügen Sie den Parameter
Register-ArgumentCompleter -NativeFallbackhinzu, um das Registrieren eines Cover-All-Completers für systemeigene Befehle (#25230) zu unterstützen. - Behandle
-Targetals Literal inNew-Item(#25186) (Danke @GameMicrowave!)) - Aktualisierung der PATH-Umgebungsvariable für ausführbare Paketmanager-Datei unter Windows (#25847)
- Aktualisieren
Get-Service, um häufige Fehler beim Abrufen nicht kritischer Eigenschaften für einen Dienst (#24245) zu ignorieren (Danke, @jborean93!)) - Hinzufügen von Unterstützung für einfache und doppelte Anführungszeichen im
Join-StringArgument Completer (#25283) (Danke @ArmaanMcleod!) - Kontrollkästchen entfernen
IsScreenReaderActive()ausConsoleHost(#26118) - Verbesserung der
$using-Ausdrucksunterstützung inInvoke-Command(#24025) (Vielen Dank an @jborean93!)) - Ändern des Standardtimeouts des Feedbackanbieters von 300 ms auf 1000 ms (#25910)
- Hinzufügen von Unterstützung für Tausendertrennzeichen in
[bigint]Typumwandlungen (#25396) (Danke @AbishekPonmudi!)) - Füge
MethodInvocationNachverfolgung für die Überlastungsprotokollierung hinzu (#21320) (Danke @jborean93!)) - Fix
ConvertFrom-Jsonzum Ignorieren von Kommentaren innerhalb von Array-Literalen (#14553) (#26050) (Dank an @MatejKafka!)) - Fix
-Debug, um dieShouldProcessEingabeaufforderung nicht auszulösen (#26081) - Korrigieren
Write-Hostzu beachtenOutputRendering = PlainText(#21188) - Debug-Ablaufverfolgungsfehler mit magischen Ausdehnungen beheben (#25726) (Danke @jborean93!))
- Korrigieren der Anführungszeichen in der Vervollständigung, wenn der Pfad ein doppeltes Anführungszeichenzeichen (#25631) enthält (Danke @MartinGC94!))
- Beheben des allgemeinen Parameters
-ProgressActionfür erweiterte Funktionen (#24591) (Danke) @cmkb3!) - Beheben Sie den
NullReferenceExceptionFehler beim Schreiben von Statuseinträgen in die Konsole aus mehreren Threads (#25440) (Danke) @kborowinski!) - Verwenden Sie den absoluten Pfad in
FileSystemProvider.CreateDirectory(#24615) (Danke) @Tadas!) - Machen Sie geerbte geschützte interne Instanzmitglieder im Umfang der PowerShell-Klasse zugänglich (#25245) (Danke) @mawosoft!)
- Hinzufügen interner Methoden zum Überprüfen von Einstellungen (#25514) (Danke @iSazonov!)
- Parameter hinzufügen
-ExcludeModulezuGet-Command(#18955) (Danke @MartinGC94!) - Gibt die richtige FileName-Eigenschaft für
Get-Itemdas Auflisten alternativer Datenströme (#18019) (Danke) zurück. @kilasuit!) - Behebung
Get-ItemPropertydes Fehlers zum Melden eines nicht beendeten Fehlers für die Umwandlungs exception (#21115) (Danke) @ArmaanMcleod!) - Behebung eines Fehlers in der Verarbeitung des XmlNode-Objekts (#24669) (Danke @brendandburns!))
- Fehler beim
New-Item -ForceÜbergeben eines ungültigen Verzeichnisnamens (#24936) (Danke) @kborowinski!) - Erlauben Sie
Start-Transcript,$Transcriptzu verwenden, das eine vonPSObjectumschlossene Zeichenfolge ist, um den Transkriptpfad (#24963) anzugeben (Danke @kborowinski!)). - Verbessern Sie die
Start-Process -WaitAbfrageeffizienz (#24711) (Danke @jborean93!) - Hinzufügen: Abschluss von Modulen anhand ihres Kurznamens (#20330) (Danke @MartinGC94!)
Motorverbesserungen
- Aktualisieren des PSDiagnostics-Moduls zum Verwalten des PowerShellCore-Anbieters in PowerShell 7 (#25590)
- Das Abwählen des Named-Pipe-Listeners mithilfe der Umgebungsvariable
POWERSHELL_DIAGNOSTICS_OPTOUT(#26086) zulassen - Stellen Sie sicher, dass Sockettimeouts nur während der Tokenüberprüfung festgelegt werden (#26066)
- Beheben Sie die Ausgabe des Konsolenhosts, damit
NO_COLORberücksichtigt wird (#24391) - Aktualisierung des PSRP-Protokolls zur Außerbetriebnahme des Sitzungsschlüsselaustauschs zwischen neuerem Client und Server (#25774)
- Beheben Sie die
sshPATH-Überprüfung inSSHConnectionInfo, wenn der Standard-Runspace nicht verfügbar ist (#25780) (Danke @jborean93!)) - Hinzufügen des Hex-Formats für systemeigene Befehlsausgangscodes (#21067) (Danke) @sba923!)
- Beheben des Endlosschleifenabsturzes in der Ableitung variabler Typen (#25696) (Danke @MartinGC94!)
- Hinzufügen
PSForEachundPSWhereals Aliase für die systeminternen PowerShell-MethodenWhereundForeach(#25511) (Danke) @powercode!) - Das AIShell-Modul wurde der Telemetrie-Sammlungsliste hinzugefügt (#24747)
- Hilfsprogramm in
EnumSingleTypeConverterzum Abrufen von Enum-Namen als Array hinzugefügt (#17785) (Danke @fflaten!)) - Aktualisieren der DnsNameList für X509Certificate2 zur Verwendung der
X509SubjectAlternativeNameExtension.EnumerateDnsNames()Methode (#24714) (Danke) @ArmaanMcleod!) - Stringify ErrorRecord mit leerer Ausnahmemeldung zur leeren Zeichenfolge (#24949) (Danke @MatejKafka!)
- Add
PipelineStopTokentoCmdlet, das signalisiert wird, wenn die Pipeline angehalten wird (#24620) (Danke @jborean93!) - Fallback auf AppLocker nach
WldpCanExecuteFile(#24912) - Verschieben Sie die Protokollierung des .NET-Methodenaufrufs, sodass sie nach der notwendigen Typumwandlung für die Methodenargumente erfolgt (#25022).
- Korrigiere Endlosschleife in der Typinferenz (#25206) (Danke @MartinGC94!))
- Entfernen Sie den alten Fuzzyvorschlag, und beheben Sie den Vorschlag für den lokalen Skriptdateinamen (#25177)
- Machen Sie
SystemPolicyöffentliche APIs sichtbar, aber nicht operativ auf Unix-Plattformen, damit sie inPowerShellStandard.Libraryenthalten sein können (#25051). - Festlegen von Standardhandles explizit beim Starten eines Prozesses mit
-NoNewWindow(#25061) - QuickInfo für Variablenerweiterung reparieren und Beschreibung einschließen (#25112) (Danke) @jborean93!)
- Verwenden von Skriptdateipfaden beim Abschließen relativer Pfade für die Verwendung von Anweisungen (#20017) (Danke) @MartinGC94!)
- DSC-Analyse über Übersetzungsebenen der Betriebssystemarchitektur zulassen (#24852) (Danke @bdeb1337!)
Experimentelle Features
Die folgenden experimentellen Features sind in PowerShell 7.6-preview.3 enthalten:
- PSNativeWindowsTildeExpansion – Hinzufügen der Tilde-Erweiterung für Windows-native ausführbare Dateien
- PSRedirectToVariable – Zulassen der Umleitung zu einer Variablen
-
PSSerializeJSONLongEnumAsNumber -
ConvertTo-Jsonbehandelt jetzt große Enumerationen als Zahlen.