Neuerungen in PowerShell 7.5
PowerShell 7.5-rc.1 enthält die folgenden Features, Updates und unterbrechungsfreien Änderungen. PowerShell 7.5 basiert auf .NET 9.0.100 GA-Version.
Eine umfassende Liste der Änderungen finden Sie im Änderungsprotokoll im GitHub-Repository.
Aktuelle Änderungen
- Die Parameter
-OlderThan
und-NewerThan
werden fürTest-Path
bei Verwendung vonPathType
und des Datumsbereichs behoben. (#20942) (Danke an @ArmaanMcleod!)- Zuvor wäre
-OlderThan
ignoriert worden, wenn diese zusammen angegeben worden wären.
- Zuvor wäre
- Ändern Sie den Standardwert
New-FileCatalog -CatalogVersion
in 2 (#20428) (Danke an @ThomasNieto!) - Blockieren von Hilfe von Netzwerkstandorten in eingeschränkten Remotingsitzungen (#20593)
- Das Windows-Installationsprogramm merkt sich jetzt die verwendeten Installationsoptionen und verwendet sie zum Initialisieren von Optionen für die nächste Installation (#20420) (Vielen Dank @reduckted!)
ConvertTo-Json
serialisiertBigInteger
jetzt als Zahl (#21000) (Danke @jborean93!)
Aktualisierte Module
PowerShell 7.5-rc.1 enthält die folgenden aktualisierten Module:
- Microsoft.PowerShell.PSResourceGet v1.1.0-RC2
- PSReadLine v2.3.6
Verbesserungen bei der TAB-Vervollständigung
Vielen Dank an @ArmaanMcleod und alle anderen für die Verbesserung der Vervollständigung mit der TAB-Taste.
- Fall back to type inference when hashtable key-value cannot be retrieved from safe expression (#21184) (Thanks @MartinGC94!)
- Beheben der Regression beim Ausführen der Typrückleitung für
$_
(#21223) (Danke) @MartinGC94!) - Erweitern
~
auf$home
Windows mit Abschluss der Registerkarte (#21529) - Führen Sie den Vorgang beim Deklarieren des Parameternamens und des Klassenmememers (#21182) (Danke) nicht aus. @MartinGC94!)
- Verhinderung eines Fallbacks auf den Dateiabschluss bei Vervollständigung mit der TAB-TASTE bei Typnamen (#20084) (Danke an @MartinGC94)
- Argumentvervollständigung zu
-Version
fürSet-StrictMode
hinzugefügt (#20554) (Danke an @ArmaanMcleod!) -Verb
-Argumentvervollständigung fürGet-Verb
/Get-Command
hinzugefügt undGet-Verb
umgestaltet (#20286) (Danke an @ArmaanMcleod)-Verb
-Argumentvervollständigung fürStart-Process
hinzugefügt (#20415) (Danke an @ArmaanMcleod)-Scope
-Argumentvervollständigung für die Befehle*-Variable
,*-Alias
und*-PSDrive
hinzugefügt (#20451) (Danke an @ArmaanMcleod)-Module
-Abschluss für dieSave-Help
/Update-Help
-Befehle hinzugefügt (#20678) (Danke @ArmaanMcleod)
Neue Cmdlets
- Hinzufügen der Cmdlets
ConvertTo-CliXml
undConvertFrom-CliXml
(#21063) (Danke an @ArmaanMcleod!)
Verbesserungen bei Web-Cmdlets
- Problembehebung, damit
-PassThru
und-Outfile
zusammen funktionieren (#24086) (Danke an @jshigetomi!) - Hinzufügen der Eigenschaft
OutFile
inWebResponseObject
(#24047) (Danke an @jshigetomi!) - Anzeigen des Dateinamens in
Invoke-WebRequest -OutFile -Verbose
(#24041) (Danke an @jshigetomi!) - Problembehebung für WebCmdlets, wenn
-Body
angegeben ist, aberContentType
nicht (#23952) (Danke an @CarloToso!) - Behoben:
Invoke-WebRequest
zeigt nun die richtige Größe an, wenn-Resume
angegeben wird (#20207) (Danke an @LNKLEO!). - Behoben: Web-Cmdlets lassen nun zu, dass
WinForm
-Apps ordnungsgemäß arbeiten (#20606).
Weitere Verbesserungen an Cmdlets
- Ermöglichen, dass
-NoRestart
mitRegister-PSSessionConfiguration
funktioniert (#23891) - Hinzufügen der Optionen
IgnoreComments
undAllowTrailingCommas
zum CmdletTest-Json
(#23817) (Danke an @ArmaanMcleod!) - Get-Help meldet Parameter mit dem Attribut
ValueFromRemainingArguments
möglicherweise als pipelinefähig (#23871) - Ändern des Typs
LineNumber
vonulong
inSelect-String
(#24075) (Danke an @Snowman-25!) Get-Process
: Administratoranforderung für-IncludeUserName
(#21302) entfernen (Vielen Dank @jborean93!)- Fehler
Test-Path -IsValid
beim Überprüfen auf ungültige Pfad- und Dateinamenzeichen (#21358) - Hinzufügen
RecommendedAction
zurConciseView
Fehlerberichterstattung (#20826) (Danke @JustinGrote!) - Statusleiste für
Remove-Item
Cmdlet (#20778) hinzugefügt (Danke) @ArmaanMcleod!) - Behoben:
Test-Connection
aufgrund von .NET 8-Änderungen (#20369) - Behoben:
Get-Service
-Fehlermeldung ohne Abbruch, um die Kategorie einzuschließen (#20276) - Zu
New-Guid
werden die Parameter-Empty
und-InputObject
hinzugefügt. (#20014) (Vielen Dank an @CarloToso!)) - Der Alias
r
wird dem Parameter-Recurse
für denGet-ChildItem
-Befehl hinzugefügt (#20100) (Danke an @kilasuit!). LP
wird denLiteralPath
-Aliasen hinzugefügt, da Funktionen dies nicht aufweisen (#20820).- Lokalisierungsfallback wird
Import-LocalizedData
hinzugefügt (#19896) (Danke an @chrisdent-de!). Aliases
wird den Eigenschaften hinzugefügt, die angezeigt werden, wenn der Hilfeinhalt des vonGet-Help
zurückgegebenen Parameters formatiert wird (#20994).HelpUri
wird zuRemove-Service
hinzugefügt (#20476).- Behoben: Abschlussabsturz für den SCCM-Anbieter (#20815, #20919, #20915) (Danke an @MartinGC94!)
- Behoben: Regression in
Get-Content
, wenn-Tail 0
und-Wait
zusammen verwendet werden (#20734) (Danke an @CarloToso!) - Behoben:
Start-Process -PassThru
, um sicherzustellen, dass das ObjektProcess
auf die EigenschaftExitCode
zugreifen kann (#20749) (Danke an @CodeCyclone!). - Behoben:
Group-Object
verwendet nun aktuelle Kultur für die Ausgabe (#20608). - Behoben:
Group-Object
-Ausgabe verwendet interpolierte Zeichenfolge (#20745) (Danke an @mawosoft!). - Behoben: Rendering von
DisplayRoot
für das NetzwerkPSDrive
(#20793) - Behoben:
Copy-Item
-Fortschritt wird nur als abgeschlossen angezeigt, wenn alle Dateien kopiert wurden (#20517). - Behoben: Regression des UNC-Pfadabschlusses (#20419) (Danke an @MartinGC94!)
- Fehlermeldung, wenn ungültige
-ExecutionPolicy
anpwsh
übergeben wird (#20460) - Hinzufügen der Module WinGetCommandNotFound und CompletionPredictor zum Nachverfolgen der Nutzung (#21040)
- Hinzufügen des Parameters DateKind zu
ConvertFrom-Json
(#20925) (Vielen Dank an @jborean93!) - Hinzufügen von DirectoryInfo zum „OutputType“ für „New-Item“ (#21126) (Vielen Dank an @MartinGC94!)
- Problembehebung für
Get-Error
-Serialisierung von Arraywerten (#21085) (Danke an @jborean93!) - Problembehebung für
Test-ModuleManifest
, damit ein UNC-Pfad verwendet werden kann (#24115) - Problembehebung für
Get-TypeData
, damit sofort in die Pipeline geschrieben wird, anstatt zuerst Daten zu sammeln (#24236) (Danke an @MartinGC94) - Hinzufügen des Parameters
-Force
zu den CmdletsResolve-Path
undConvert-Path
zur Unterstützung ausgeblendeter Platzhalterdateien #20981 (Danke an @ArmaanMcleod!)
Engine-Verbesserungen
- Explizites Starten und Beenden der ANSI-Fehlerfarbe (#24065) (Danke an @JustinGrote!)
- Verbessern der .NET-Überladungsdefinition generischer Methoden (#21326) (Danke an @jborean93!)
- Optimieren des Vorgangs
+=
für eine Auflistung, wenn es sich um ein Objektarray handelt (#23901) (Danke an @jborean93!) - Hinzufügen von Telemetrie, um beim Importieren eines Moduls nach bestimmten Tags zu suchen (#20371)
- Hinzufügen von
PSAdapter
undConsoleGuiTools
zum Laden der Telemetriepositivliste des Moduls (#20641) - Hinzufügen des Winget-Moduls zum Nachverfolgen der Nutzung (#21040)
- Sicherstellen, dass der Dateiname nicht NULL ist, wenn WDAC ETW-Ereignisse protokolliert werden (#20910) (Danke an @jborean93!)
- Behoben: Vier Regressionen, die vom WDAC-Protokollierungsfeature eingeführt wurden (#20913)
- Eingabe-, Ausgabe- und Fehlerhandles bleiben nicht festgelegt, wenn sie nicht weitergeleitet werden (#20853).
- Behoben: Implizite Remotingproxy-Cmdlets, die auf allgemeine Parameter reagieren (#20367)
- Modulversion wird in Fehlermeldungen hinzugefügt, wenn das Modul nicht gefunden wird (#20144) (Danke an @ArmaanMcleod!)
- Behoben:
unixmode
zur Verarbeitung vonsetuid
undsticky
, wenn Datei keine ausführbare Datei ist (#20366) - Fix mit Assembly zum Verwenden von Path.Combine beim Erstellen von Assemblypfaden (#21169)
- Überprüfen des Werts für die Verwendung von Namespaces während semantischer Überprüfungen, um die Deklarierung von ungültigen Namespaces zu verhindern (#21162)
- Handhabung des globalen Tools speziell beim Voranstellen von
$PSHome
in PATH (#24228)
Experimentelle Features
Die folgenden experimentellen Features wurden in Mainstream-Features in PowerShell 7.5-rc.1 konvertiert:
Die folgenden experimentellen Features sind in PowerShell 7.5-rc.1 enthalten:
- PSRedirectToVariable – Zulassen der Umleitung zu einer Variablen (#20381)
- PSNativeWindowsTildeExpansion – Hinzufügen der Tildenerweiterung für native ausführbare Windows-Dateien (#20402) (Danke an @domsleee!)
- PSSerializeJSONLongEnumAsNumber -
ConvertTo-Json
behandelt große Enumerationen jetzt als Zahlen (#20999) (Danke an @jborean93!)