Novinky v PowerShellu 7.2
PowerShell 7.2 je příští vydaná verze LTS (Long Term Servicing), která je založená na .NET 6.0.
PowerShell 7.2 obsahuje následující funkce, aktualizace a zásadní změny.
- Nové balíčky univerzálního instalačního programu pro většinu podporovaných distribucí Linuxu
- Podpora služby Microsoft Update ve Windows
- 2 nové experimentální funkce
- Podpora pro vylepšené předávání argumentů nativních příkazů
- Podpora barev ANSI FileInfo
- Vylepšené dokončování tabulátoru
- PSReadLine 2.1 s prediktivní technologií IntelliSense
- 7 experimentálních funkcí povýšených do hlavních a 1 odebraná
- Oddělení DSC od PowerShellu 7 za účelem povolení budoucích vylepšení
- Několik zásadních změn pro zlepšení použitelnosti
Úplný seznam změn najdete v protokolu změn v úložišti GitHub.
Aktualizace instalace
Projděte si pokyny k instalaci upřednostňovaného operačního systému:
PowerShell 7.2 navíc podporuje verze ARM64 pro Windows a macOS a ARM32 a ARM64 debianu a Ubuntu.
Informace o up-to-date o podporovaných operačních systémech a životním cyklu podpory najdete v životního cyklu podpory PowerShellu.
Nové univerzální instalační balíčky pro linuxové distribuce
Dříve jsme vytvořili samostatné instalační balíčky pro každou podporovanou verzi CentOS, RHEL, Debian a Ubuntu. Balíček univerzálního instalačního programu kombinuje do jednoho osm různých balíčků, což usnadňuje instalaci v Linuxu. Univerzální balíček nainstaluje potřebné závislosti pro cílovou distribuci a vytvoří změny specifické pro platformu, které budou fungovat v PowerShellu.
Podpora služby Microsoft Update pro Windows
PowerShell 7.2 přidává podporu pro Microsoft Update. Když tuto funkci povolíte, získáte nejnovější aktualizace PowerShellu 7 v tradičním toku správy služby Windows Update (WU), ať už se jedná o Windows Update pro firmy, WSUS, SCCM nebo interaktivní dialogové okno WU v Nastavení.
Balíček MSI PowerShellu 7.2 obsahuje následující možnosti příkazového řádku:
-
USE_MU
– Tato vlastnost má dvě možné hodnoty:-
1
(výchozí) – Výslovný souhlas s aktualizací prostřednictvím služby Microsoft Update nebo WSUS -
0
– nepřihlásit se k aktualizaci prostřednictvím služby Microsoft Update nebo WSUS
-
ENABLE_MU
-
1
(výchozí) – Výslovný souhlas s používáním služby Microsoft Update pomocí automatických aktualizací nebo služby Windows Update -
0
– nerozhodnout se pro používání služby Microsoft Update, automatických aktualizací ani služby Windows Update
-
Experimentální funkce
V této verzi se následující experimentální funkce staly běžnými funkcemi:
-
Microsoft.PowerShell.Utility.PSImportPSDataFileSkipLimitCheck
- nahledněte na Import-PowerShellDataFile Microsoft.PowerShell.Utility.PSManageBreakpointsInRunspace
-
PSAnsiRendering
– viz about_ANSI_Terminals -
PSAnsiProgress
– viz o_ANSI_Terminálech PSCultureInvariantReplaceOperator
PSNotApplyErrorActionToStderr
PSUnixFileStat
V této verzi byla přidána následující experimentální funkce:
PSNativeCommandArgumentPassing – pokud je tato experimentální funkce povolená, PowerShell používá vlastnost ArgumentList objektu StartProcessInfo objektu, nikoli náš aktuální mechanismus rekonstruování řetězce při vyvolání nativního spustitelného souboru. Tato funkce přidá novou automatickou proměnnou
$PSNativeCommandArgumentPassing
, která umožňuje vybrat chování za běhu.PSAnsiRenderingFileInfo – Povolí barevné přizpůsobení informací o souboru pomocí ANSI.
PSLoadAssemblyFromNativeCode – zveřejňuje rozhraní API, které umožňuje načítání sestavení z nativního kódu.
Další informace o experimentálních funkcích naleznete v tématu Použití experimentálních funkcí.
Vylepšené dokončování pomocí Tab
PowerShell 7.2 obsahuje několik vylepšení dokončování tabulátoru. Mezi tyto změny patří opravy chyb a zlepšení použitelnosti.
- Oprava automatického doplňování pro nelokalizovaná témata začínající na 'about*' (#15265) (díky @MartinGC94))
- Oprava zpracování splattingu jako pozičního parametru při dokončování (#14623) (díky @MartinGC94)
- Přidání dokončování pro klíčová slova nápovědy založené na komentářích (#15337) (Díky @MartinGC94)
- Přidat dokončování pro příkazy Requires (#14596) (Díky @MartinGC94))
- Přidáno dokončování tabulátoru pro parametr View rutin Format-* (#14513) (Děkujeme @iSazonov))
PSReadLine 2.1 Predictive IntelliSense
PSReadLine 2.1 zavedla rozhraní API CommandPrediction
, která vytvářejí architekturu pro poskytování předpovědí pro doplňování příkazového řádku. Rozhraní API umožňuje uživatelům zjišťovat, upravovat a spouštět úplné příkazy na základě odpovídajících předpovědí z historie uživatele.
Prediktivní technologie IntelliSense je ve výchozím nastavení zakázaná. Pokud chcete povolit predikce, spusťte následující příkaz:
Set-PSReadLineOption -PredictionSource History
Oddělení DSC od PowerShellu 7 za účelem povolení budoucích vylepšení
Modul PSDesiredStateConfiguration byl odebrán z balíčku PowerShellu 7.2 a je nyní publikován na Galerie PowerShell. To umožňuje, aby modul PSDesiredStateConfiguration byl vyvinut nezávisle na PowerShell a uživatelé mohou flexibilně pracovat s různými verzemi PowerShell a PSDesiredStateConfiguration pro své prostředí. Instalace PSDesiredStateConfiguration 2.0.5 z PowerShell Gallery:
Install-Module -Name PSDesiredStateConfiguration -Repository PSGallery -MaximumVersion 2.99
Důležitý
Nezapomeňte zahrnout parametr MaximumVersion nebo můžete nainstalovat verzi 3 (nebo vyšší) PSDesireStateConfiguration, která obsahuje významné rozdíly.
Aktualizace motoru
- Přidání
LoadAssemblyFromNativeMemory
funkce pro načtení sestavení do paměti z nativního hostitele PowerShellu vzhůru · Žádost o přijetí změn č. 14652
Zásadní změny a vylepšení
- Z balíčku PowerShellu 7.2 byla odebrána konfigurace PSDesiredStateConfiguration.
- Vytvoření univerzálních balíčků PowerShellu pro Linux deb a RPM (#15109)
- Experimentální funkce
PSNativeCommandArgumentPassing
: Použití argumentList pro nativní vyvolání spustitelného souboru (#14692) - Ujistěte se, že je pro všechny výstupy rutin skriptu (#12766) nastavený
-PipelineVariable
. - Generování upozornění, pokud
ConvertTo-Json
překročí hodnotu -Depth (#13692) - Odstraňte alias D přepínače -Directory CL-General #15171
- Zlepšení detekce proměnlivých hodnotových typů (#12495)
- Omezit
New-Object
v režimu NoLanguage při uzamčení (#14140) - Vynucení konfigurace odepření AppLocker před konfigurací obejití politiky spuštění (#15035)
- Změňte
z CodeProperty na AliasProperty , které ukazuje na(#16165)