Sdílet prostřednictvím


Zpráva k vydání verze windows Management Framework (WMF) 5.x

Změny WMF 5.0

  • PowerShell 5.0 přidá nový datový proud strukturovaných informací
  • Vylepšení DSC včetně čtyř nových prostředků DSC:
    • WindowsFeatureSet
    • WindowsOptionalFeatureSet
    • Sada služeb
    • ProcessSet
  • Přidání Just Enough Administration pro povolení správy na základě rolí prostřednictvím vzdálené komunikace PowerShellu
  • PowerShell 5.0 rozšiřuje jazyk tak, aby zahrnoval uživatelem definované třídy a výčty.
  • Vylepšené funkce ladění v prostředí PowerShell ISE a přidání vzdáleného ladění
  • Přidání modulů PowerShellGet a PackageManagement
  • Vylepšené protokolování a přepisy skriptů PowerShellu
  • Přidání rutin syntaxe kryptografických zpráv
  • WMF 5.0 obsahuje modul NetworkSwitchManager pro Windows.
  • Přidání modulu Microsoft.PowerShell.ODataUtils
  • Přidání podpory pro protokolování inventáře softwaru (SIL)
  • Oddělte nové nebo aktualizační rutiny v reakci na požadavky a problémy uživatelů.

Změny WMF 5.1

WMF 5.1 obsahuje komponenty PowerShellu, WMI, WinRM a Protokolování inventáře softwaru (SIL), které byly vydány s Windows Serverem 2016. WMF 5.1 je možné nainstalovat ve Windows 7, Windows 8.1, Windows Serveru 2008 R2, 2012 a 2012 R2 a nabízí několik vylepšení oproti WMF 5.0, mezi které patří:

  • Nové rutiny
  • Vylepšení modulu PowerShellGet zahrnují vynucování podepsaných modulů a instalaci modulů JEA.
  • Přidání podpory PackageManagement pro kontejnery, nastavení CBS, nastavení založené na exe, balíčky CAB
  • Vylepšení ladění pro třídy DSC a PowerShellu
  • Vylepšení zabezpečení včetně vynucení modulů podepsaných katalogem pocházejících ze serveru vyžádané replikace a při použití rutin PowerShellGet
  • Odpovědi na řadu uživatelských požadavků a problémů

Důležitý

Než nainstalujete WMF 5.1 ve Windows Serveru 2008 nebo Windows 7, zkontrolujte, že není nainstalovaný WMF 3.0. Další informace naleznete v tématu WMF 5.1 Požadavky pro Windows Server 2008 R2 SP1 a Windows 7 SP1.

Edice PowerShellu

Od verze 5.1 je PowerShell k dispozici v různých edicích, které označují různé sady funkcí a kompatibilitu platformy.

  • Desktop Edition: postaveno na rozhraní .NET Framework a poskytuje kompatibilitu se skripty a moduly, které cílí na verze PowerShellu spuštěné na plných edicích Windows, jako je Jádro serveru a Windows Desktop.
  • Core Edition: postavená na .NET Core a poskytuje kompatibilitu se skripty a moduly, které cílí na verze PowerShellu běžící na edicích Windows s omezenými nároky, jako jsou Nano Server a Windows IoT.

Další informace o používání edic PowerShellu

Mezipaměť analýzy modulů

Počínaje verzí WMF 5.1 poskytuje PowerShell kontrolu nad souborem, který se používá k ukládání dat o modulu do mezipaměti, jako jsou příkazy, které exportuje.

Ve výchozím nastavení je tato mezipaměť uložena v souboru ${env:LOCALAPPDATA}\Microsoft\Windows\PowerShell\ModuleAnalysisCache. Mezipaměť se obvykle čte při spuštění při hledání příkazu a zapisuje se do vlákna na pozadí někdy po importu modulu.

Pokud chcete změnit výchozí umístění mezipaměti, nastavte před spuštěním PowerShellu proměnnou prostředí $env:PSModuleAnalysisCachePath. Změny této proměnné prostředí ovlivní pouze podřízené procesy. Hodnota by měla pojmenovat úplnou cestu (včetně názvu souboru), kterou má PowerShell oprávnění k vytváření a zápisu souborů. Pokud chcete zakázat mezipaměť souborů, nastavte tuto hodnotu na neplatné umístění, například:

$env:PSModuleAnalysisCachePath = 'nul'

Tím se nastaví cesta k neplatnému zařízení. Pokud PowerShell nemůže zapisovat do cesty, nevrátí se žádná chyba, ale pomocí trasování se zobrazí hlášení chyb:

Trace-Command -PSHost -Name Modules -Expression { Import-Module Microsoft.PowerShell.Management -Force }

Při psaní mezipaměti PowerShell zkontroluje moduly, které už neexistují, aby nedocházelo k zbytečně velké mezipaměti. Někdy tyto kontroly nejsou žádoucí, v takovém případě je můžete vypnout nastavením:

$env:PSDisableModuleAnalysisCacheCleanup = 1

Nastavení této proměnné prostředí se projeví okamžitě v aktuálním procesu.

Určení verze modulu

Ve WMF 5.1 se using module chová stejně jako ostatní konstrukce související s moduly v PowerShellu. Dříve jste neměli způsob, jak určit konkrétní verzi modulu; pokud existuje více verzí, výsledkem byla chyba.

Ve WMF 5.1:

  • Můžete použít ModuleSpecification Konstruktor (Hashtable).

    Tato tabulka hash má stejný formát jako Get-Module -FullyQualifiedName.

    Příklad :using module @{ModuleName = 'PSReadLine'; RequiredVersion = '1.1'}

  • Pokud existuje více verzí modulu, PowerShell používá stejnou logiku řešení jako Import-Module a nevrací stejné chování jako Import-Module a Import-DscResource.

Vylepšení pesteru

Ve WMF 5.1 byla verze Pester, která se dodává s PowerShellem, aktualizována z verze 3.3.5 na 3.4.0. Tato aktualizace umožňuje lepší chování nástroje Pester na Nano Serveru.

Změny v nástroji Pest můžete zkontrolovat kontrolou CHANGELOG v úložišti GitHub.