Nyheter i PowerShell 7.3
PowerShell 7.3 är nästa förhandsversion som bygger på .NET 7.0.
PowerShell 7.3-preview.5 innehåller följande funktioner, uppdateringar och icke-bakåtkompatibla ändringar.
Kända problem i 7.3-preview.6
Dessa problem bör åtgärdas i nästa version av .NET 7 och inkluderas i en framtida förhandsversion av PowerShell 7.3.
Test-Connectionbryts på grund av en avsiktlig icke-bakåtkompatibel ändring i .NET 7. Den spåras av #17018
Förbättrad felhantering
- Korrekt inställd
$?för kommandouttryck med omdirigeringar (#16046) - Åtgärda ett gjutningsfel när du använder
$PSNativeCommandUseErrorActionPreference(#15993) - Gör så att det interna kommandofelet hanterar om du vill
ErrorActionPreference(#15897) - Ange den körbara sökvägen som
TargetObjectför slutkoden ErrorRecord (#16108) (tack @rkeithhill!)
Förbättringar av session och fjärrkommunikation
- Lägg till
-Optionsi PSRP över SSH-kommandon för att tillåta att OpenSSH-alternativ skickas direkt (#12802) (tack @BrannenGH!) - Lägg till
-ConfigurationFileparameterpwshför att tillåta att en ny process startas med sessionskonfigurationen som definierats i en.psscfil (#17447) - Lägg till stöd för användning
New-PSSessionConfigurationFilepå plattformar som inte är Windows -plattformar (#17447)
Förbättringar av flikens slutförande
- Åtgärda flikslut i skriptblocket som angetts
ValidateScriptAttributeför . (#14550) (Tack @MartinGC94!) - Fliken har slutförts för loopetiketter efter
break/continue(#16438) (tack @MartinGC94!) - Förbättra hashtable-slutförandet i flera scenarier (#16498) (tack @MartinGC94!)
- Parametersplatting
- Argumentparameter för
Invoke-CimMethod - FilterHashtable-parameter för
Get-WinEvent - Egenskapsparameter för CIM-cmdletar
- Tar bort dubbletter från medlemsslutscenarier
- Stöd för snedstreck i slutförande av nätverksresurs (UNC-sökväg) (#17111) (#17117) (tack @sba923!)
- Förbättra automatisk slutförande av medlemmar (#16504) (tack @MartinGC94!)
- Prioritera ValidateSet-slutföranden över Uppräkningar för parametrar (#15257) (tack @MartinGC94!)
- Lägg till stöd för typinferens för generiska metoder med typparametrar (#16951) (Tack @MartinGC94!)
- Förbättra typinferens och slutföranden (#16963) (Tack @MartinGC94!)
- Tillåter att metoder visas i slutföranderesultat för
ForEach-Object -MemberName - Förhindrar slutförande av uttryck som returnerar tomrum som
([void]("")) - Tillåter att icke-standardklasskonstruktorer visas när klassavslut baseras på AST
- Tillåter att metoder visas i slutföranderesultat för
Uppdaterade cmdletar
- Lägg till
-HttpVersionparameter i webb-cmdletar (#15853) (tack @hayhay27!) - Lägg till stöd för webb-cmdletar för öppna indatataggar (#16193) (tack @farmerau!)
- Korrigering
ConvertTo-Json -Depthför att tillåta högst 100 (#16197) (Tack @KevRitchie!)@rkeithhill!) - Förbättra variabelhanteringen när du anropar
Invoke-Commandmed$using:uttrycket (#16113) (Tack @dwtaber!) - Lägg till
-StrictModeInvoke-Commandi för att tillåta att strikt läge anges när kommandot anropas lokalt (#16545) (tack @Thomas-Yu!) - Lägg till
cleanblock i skriptblocket som en peer tillbegin,processochendför att tillåta enkel resursrensning (#15177) - Lägg till
-Amendedväxel tillGet-CimClasscmdlet (#17477) (Tack @iSazonov) - Har ändrats
ConvertFrom-Json -AsHashtableför att använda ordnad hashtable (#17405) - Ansi-escapesekvenser har tagits bort i strängar innan de skickas till
Out-GridView(#17664) - Parametern Millisekunder har lagts till
New-TimeSpani (#17621) (tack @NoMoreFood!) - Visa valfria parametrar när du visar metoddefinitioner och överlagringar (#13799) (Tack @eugenesmlv!)
En fullständig lista över ändringar finns i Ändringsloggen på GitHub-lagringsplatsen.
Experimentella funktioner
PowerShell 7.3 introducerar följande experimentella funktioner:
- PSExec – Lägger till den nya
Switch-Processcmdleten (aliasexec) för att tillhandahållaexeckompatibilitet för icke-Windows-system. - PSCleanBlock – Lägger till
cleanblockering i skriptblock som peer tillbegin,processochendför att möjliggöra enkel resursrensning. - PSStrictModeAssignment – Lägger till parametern StrictMode för att
Invoke-Commandtillåta att strikt läge anges när kommandot anropas lokalt. - PSNativeCommandErrorActionPreference – Lägger till variabeln
$PSNativeCommandUseErrorActionPreferenceför att aktivera fel som genereras av interna kommandon till PowerShell-fel. - PSAMSIMethodInvocationLogging – Utökar de data som skickas till AMSI för inspektion så att alla anrop av .NET-metodmedlemmar inkluderas.
Mer information om experimentella funktioner finns i [Använda experimentella funktioner][exp].
Icke-bakåtkompatibla ändringar och förbättringar
- Lägg till
cleanblock i skriptblocket som en peer tillbegin,processochendför att tillåta enkel resursrensning (#15177) - Ändra standard för
$PSStyle.OutputRenderingtill Ansi - Gör
Out-StringochOut-Filebehåll strängindata oförändrade (#17455)