Novinky v Windows PowerShell 5.0

Windows PowerShell 5.0 obsahuje důležité nové funkce, které rozšiřují její použití, zlepšují jeho použitelnost a umožňují snadněji a komplexněji řídit a spravovat prostředí založená na Windows.

Windows PowerShell 5.0 je zpětně kompatibilní. Rutiny, poskytovatelé, moduly, moduly, moduly, skripty, funkce a profily navržené pro Windows PowerShell 4.0, Windows PowerShell 3.0 a Windows PowerShell 2.0 obecně fungují v Windows PowerShell 5.0 beze změn.

Instalace Windows PowerShellu

Windows PowerShell 5.0 se ve výchozím nastavení instaluje na Windows Server 2016 Technical Preview a Windows 10.

Pokud chcete nainstalovat Windows PowerShell 5.0 na Windows Server 2012 R2, Windows 8.1 Enterprise nebo Windows 8.1 Pro, stáhněte a nainstalujte Windows Management Framework 5.0. Před instalací Windows Management Framework 5.0 si nezapomeňte přečíst podrobnosti o stahování a splnit všechny požadavky na systém.

V tomto tématu

aktualizace Windows PowerShell 4.0 v kumulativní aktualizaci z listopadu 2014 (KB 3000850)

Mnoho aktualizací a vylepšení Windows PowerShell Desired State Configuration (DSC) v Windows PowerShell 4.0 je k dispozici v kumulativní aktualizaci z listopadu 2014 pro Windows RT 8.1, Windows 8.1 a Windows Server 2012 R2 (KB3000850). Spuštěním Get-Hotfix -Id KB3000850 příkazu v Windows PowerShell můžete zjistit, jestli je ve vašem systému nainstalovaný KB3000850.

  • Aktualizace do existujících rutin v modulu PSDesiredStateConfiguration

  • Nové rutiny v modulu PSDesiredStateConfiguration

  • Vylepšení jazyka

    • DependsOn teď podporuje složené prostředky.
    • DependsOn teď podporuje čísla v názvech instancí prostředků.
    • Výrazy uzlů, které se vyhodnotí jako prázdné, už nevolají chyby.
    • Byla opravena chyba, ke které dochází v případě, že se výraz uzlu vyhodnotí jako prázdný.
    • Konfigurace volající konfigurace teď fungují v konzole Windows PowerShell.
  • Vylepšení režimu vyžádání obsahu

    • Režim vyžádání obsahu teď podporuje všechny soubory ZIP.
    • AllowModuleOverwrite teď funguje správně.
  • Vylepšení odolnosti

    • Nový debugMode umožňuje znovu načíst moduly prostředků.
    • Pokud dojde k selhání konfigurace, soubor pending.mof se neodstraní.
    • Místní Configuration Manager (LCM) je nyní odolnější při poškození nastavení metakonfigurace.
  • Vylepšení diagnostiky

    • Upozornění se zobrazí, když LCM nastaví časovač na jiné nastavení, než jste zadali.
    • Soubory protokolu chyb teď obsahují zásobník volání pro Windows PowerShell prostředky.
  • Vylepšení flexibility

    • Prostředek LocalConfigurationManager má novou vlastnost ActionAfterReboot.
      • ContinueConfiguration (výchozí hodnota): Automaticky obnoví konfiguraci po restartování cílového uzlu.
      • StopConfiguration: Po restartování uzlu automaticky neobnovujte konfiguraci.
    • Spuštění konzistence teď může probíhat častěji než operace pull nebo naopak.
    • Podpora správy verzí: DSC teď dokáže rozpoznat dokument vygenerovaný na novějším klientovi (součástí WMF 5.0).
  • Vylepšení prevence chyb

    • Verze modulu se teď vynucuje před provedením konfigurace.
    • DebugPreference je teď správně nastavená pro volání Get-, Set-, nebo Test-TargetResource.
  • Vylepšení zpracování přihlašovacích údajů

    • Certifikát se teď používá, pokud jsou zadány certifikáty i PSDscAllowPlainTextPassword .
    • Přihlašovací údaje se dešifrují, dokonce i pro Get-TargetResource.
    • Přihlašovací údaje metakonfigurace se šifrují a dešifrují.
    • PsCredentials se teď dešifrují, když jsou ve vloženém objektu.
  • Vylepšení předdefinovaných prostředků

    • Prostředek balíčku
      • Už neinstaluje nesprávný balíček (z místních nebo webových zdrojů).
      • Teď podporuje HTTPS.
    • V prostředku Balíčku je teď k dispozici podpora https.
    • Prostředek archivace teď podporuje přihlašovací údaje.

Nové funkce v Windows PowerShell 5.0

Nové funkce v Windows PowerShell

  • Od Windows PowerShell 5.0 můžete vyvíjet pomocí tříd, formální syntaxe a sémantiky, které jsou podobné jiným objektově orientovaným programovacím jazykům. Do Windows PowerShell jazyka byla přidána klíčová slova třídy, výčtu a další, aby podporovaly novou funkci. Další informace o práci s třídami najdete v tématu about_Classes.

  • Windows PowerShell 5.0 zavádí nový strukturovaný datový proud informací, který můžete použít k přenosu strukturovaných dat mezi skriptem a jeho volajícími (nebo hostitelským prostředím). Teď můžete použít Write-Host k vygenerování výstupu do informačního streamu. Informační streamy fungují také pro PowerShell.Streams, úlohy, naplánované úlohy a pracovní postupy. Následující funkce podporují datový proud informací.

    • Nová rutina Write-Information, která umožňuje určit, jak Windows PowerShell zpracovává data datového proudu informací pro příkaz. Write-Host je obálka pro informace o zápisu. Write-Information je také podporovaná aktivita pracovního postupu.
    • Dva nové společné parametry InformationVariable a InformationAction umožňují určit, jak se zobrazují datové proudy informací z příkazu. Platné hodnoty pro InformationAction jsou SilentlyContinue, Stop, Continue, Inquire, Ignore nebo Suspend, přičemž SilentlyContinue je výchozí. InformationVariable určuje řetězec jako název proměnné, do které chcete uložit Write-Host data z příkazu.
    • Nová proměnná předvoleb InformationPreference určuje výchozí předvolbu pro data informačního streamu v Windows PowerShell relaci. Výchozí hodnota je SilentlyContinue.
    • Byly přidány dva nové společné parametry pracovního postupu, PSInformation a InformationAction.
    • Při použití příkazu Format-Table se teď sloupce tabulky automaticky naformátují vyhodnocením prvních 300ms dat procházejících datovým proudem.
  • Ve spolupráci se společností Microsoft Research byla přidána nová rutina ConvertFrom-String. ConvertFrom-String umožňuje extrahovat a parsovat strukturované objekty z obsahu textových řetězců. Další informace najdete v tématu ConvertFrom-String.

  • Nová rutina Convert-String automaticky formátuje text na základě příkladu, který zadáte v parametru -Example.

  • Nový modul Microsoft.PowerShell.Archive obsahuje rutiny, které umožňují komprimovat soubory a složky do archivních souborů (označovaných také jako ZIP), extrahovat soubory z existujících souborů ZIP a aktualizovat soubory ZIP pomocí novějších verzí souborů komprimovaných v nich.

  • Nový modul PackageManagement umožňuje zjišťovat a instalovat softwarové balíčky na internetu. Modul PackageManagement (dříve označovaný jako OneGet) je správce nebo multiplexer existujících správců balíčků (označovaný také jako poskytovatelé balíčků), který sjednocuje správu balíčků Windows s jedním rozhraním Windows PowerShell.

  • Nový modul PowerShellGet umožňuje najít, nainstalovat, publikovat a aktualizovat moduly a prostředky DSC na Galerie prostředí PowerShell nebo v úložišti interních modulů, které můžete nastavit spuštěním rutiny Register-PSRepository.

  • Bylo přidáno nové klíčové slovo jazyka Skryté, které určuje, že člen (vlastnost nebo metoda) se ve výsledcích Get-Member nezobrazí (pokud nepřidáte parametr -Force). Vlastnosti nebo metody, které byly označeny jako skryté, se také nezobrazují ve výsledcích IntelliSense, pokud nejste v kontextu, kde by měl být člen viditelný; například automatická proměnná $This by měla zobrazovat skryté členy v metodě třídy.

  • Funkce New-Item, Remove-Item a Get-ChildItem byly vylepšeny tak, aby podporovaly vytváření a správu symbolických odkazů. Parametr -ItemType pro New-Item přijímá novou hodnotu SymbolicLink. Teď můžete na jednom řádku vytvořit symbolické odkazy spuštěním rutiny New-Item.

  • Get-ChildItem má také nový parametr -Depth, který použijete s parametrem -Recurse k omezení rekurze. Například Get-ChildItem -Recurse -Depth 2 vrátí výsledky z aktuální složky, všech podřízených složek v aktuální složce a všech složek v podřízených složkách.

  • Copy-Item teď umožňuje kopírovat soubory nebo složky z jedné Windows PowerShell relace do jiné, což znamená, že soubory můžete kopírovat do relací, které jsou připojené ke vzdáleným počítačům (včetně počítačů s Nano Serverem a nemají tedy žádné jiné rozhraní). Pokud chcete kopírovat soubory, zadejte ID PSSession jako hodnotu nových parametrů -FromSession a -ToSession a přidáním parametrů -Path a -Destination zadejte cestu původu a cíl. Například Copy-Item -Path c:\myFile.txt -ToSession $s -Destination d:\destinationFolder.

  • Windows PowerShell přepis byl vylepšen tak, aby se kromě hostitele konzoly (powershell.exe) vztahovat i na všechny hostitelské aplikace (například Windows PowerShell ISE). Možnosti přepisu (včetně povolení systémového přepisu) je možné nakonfigurovat tak, že povolíte nastavení Zapnout Zásady skupiny přepis PowerShellu, které najdete v tématu Šablony pro správu/ Součásti systému Windows/Windows PowerShell.

  • Nová funkce podrobného trasování skriptů umožňuje povolit podrobné sledování a analýzu Windows PowerShell použití skriptování v systému. Po povolení podrobného trasování skriptů Windows PowerShell protokoluje všechny bloky skriptů do protokolu událostí Trasování událostí pro Windows (ETW) Microsoft-Windows-PowerShell/ Operational.

  • Počínaje verzí Windows PowerShell 5.0 podporují nové rutiny syntaxe kryptografických zpráv šifrování a dešifrování obsahu pomocí standardního formátu IETF pro kryptograficky chráněné zprávy, jak je popsáno v RFC5652. Do modulu Microsoft.PowerShell.Security byly přidány rutiny Get-CmsMessage, Protect-CmsMessage a Unprotect-CmsMessage.

  • Nové rutiny v modulu Microsoft.PowerShell.Utility Get-Runspace, Debug-Runspace, Get-RunspaceDebug, Enable-RunspaceDebug a Disable-RunspaceDebug umožňují nastavit možnosti ladění v prostředí runspace a spustit a zastavit ladění v prostředí runspace. Pro ladění libovolných prostředí runspace (tj. prostředí runspace, která nejsou výchozím prostředím runspace pro Windows PowerShell konzolu nebo Windows PowerShell relaci ISE) Windows PowerShell umožňuje nastavit zarážky ve skriptu a přidat zarážky zastavují spuštění skriptu, dokud nebudete moct připojit ladicí program k ladění skriptu runspace. Do ladicího programu Windows PowerShell skriptů pro prostředí runspace byla přidána podpora vnořeného ladění pro libovolná prostředí runspace.

  • Do modulu Microsoft.PowerShell.Utility byla přidána nová rutina Format-Hex. Format-Hex umožňuje zobrazit text nebo binární data v šestnáctkovém formátu.

  • Get-Clipboard a Set-Clipboard rutiny byly přidány do modulu Microsoft.PowerShell.Utility; usnadňují přenos obsahu do a z Windows PowerShell relace. Rutiny schránky podporují obrázky, zvukové soubory, seznamy souborů a text.

  • Do modulu Microsoft.PowerShell.Management byla přidána nová rutina Clear-RecycleBin. tato rutina vyprázdní koš pro pevnou jednotku, která zahrnuje externí jednotky. Ve výchozím nastavení se zobrazí výzva k potvrzení Clear-RecycleBin příkazu, protože vlastnost ConfirmImpact rutiny je nastavená na ConfirmImpact.High.

  • Nová rutina New-TemporaryFile umožňuje vytvořit dočasný soubor jako součást skriptování. Ve výchozím nastavení se nový dočasný soubor vytvoří v C:\Users\<user name>\AppData\Local\Tempsouboru .

  • Rutiny Out-File, Add-Content a Set-Content teď mají nový parametr -NoNewline, který vynechá nový řádek za výstupem.

  • Rutina New-Guid využívá třídu Guid rozhraní .NET Framework ke generování identifikátoru GUID, která je užitečná při psaní skriptů nebo prostředků DSC.

  • Vzhledem k tomu, že informace o verzi souboru mohou být zavádějící, zejména po opravě souboru, jsou pro objekty FileInfo k dispozici nové vlastnosti skriptu FileVersionRaw a ProductVersionRaw. Spuštěním následujícího příkazu můžete například zobrazit hodnoty těchto vlastností pro powershell.exe, kde $pid obsahuje ID procesu spuštěné relace Windows PowerShell:Get-Process -Id $pid -FileVersionInfo | Format-List *version* -Force

  • Nové rutiny Enter-PSHostProcess a Exit-PSHostProcess umožňují ladit Windows PowerShell skripty v procesech, které jsou oddělené od aktuálního procesu spuštěného v konzole Windows PowerShell. Spuštěním Enter-PSHostProcess zadejte nebo připojte konkrétní ID procesu a pak spuštěním Get-Runspace vraťte aktivní prostředí runspace v rámci procesu. Po dokončení ladění skriptu v rámci procesu spusťte Exit-PSHostProcess a odpojte se od procesu.

  • Do modulu Microsoft.PowerShell.Utility byla přidána nová rutina Wait-Debugger. Spuštěním Wait-Debugger můžete zastavit skript v ladicím programu před spuštěním dalšího příkazu ve skriptu.

  • Ladicí program Windows PowerShell Workflow teď podporuje dokončování příkazů nebo karet a můžete ladit vnořené funkce pracovního postupu. Stisknutím kláves Ctrl+Break teď můžete vstoupit do ladicího programu ve spuštěném skriptu, v místních i vzdálených relacích a ve skriptu pracovního postupu.

  • Do modulu Microsoft.PowerShell.Core byla přidána rutina Debug-Job pro ladění spuštěných skriptů úloh pro Windows PowerShell pracovní postup, úlohy na pozadí a úlohy spuštěné ve vzdálených relacích.

  • Pro Windows PowerShell úloh byl přidán nový stav AtBreakpoint. Stav AtBreakpoint se použije, když úloha spouští skript, který obsahuje nastavené zarážky, a skript dosáhl zarážky. Pokud je úloha zastavena na zarážce ladění, musíte úlohu ladit spuštěním rutiny Debug-Job.

  • Windows PowerShell 5.0 implementuje podporu více verzí jednoho modulu Windows PowerShell ve stejné složce v $PSModulePath. A RequiredVersion vlastnost byla přidána do Třídy ModuleSpecification, která vám pomůže získat požadovanou verzi modulu; Tato vlastnost se vzájemně vylučuje s ModuleVersion vlastnost. RequiredVersion se teď podporuje jako součást hodnoty parametru FullyQualifiedName rutin Get-Module, Import-Module a Remove-Module.

  • Teď můžete provést ověření verze modulu spuštěním rutiny Test-ModuleManifest.

  • Výsledky rutiny Get-Command nyní zobrazí sloupec Verze; Do třídy CommandInfo byla přidána nová vlastnost Version. Get-Command se zobrazují příkazy z více verzí stejného modulu. Vlastnost Version je také součástí odvozených tříd RutinaInfo: CmdletInfo a ApplicationInfo.

  • Get-Command má nový parametr -ShowCommandInfo, který vrací informace ShowCommand jako PSObjects. Tato funkce je užitečná zejména v případě, že se Show-Command spouští v Windows PowerShell ISE pomocí Windows PowerShell vzdálené komunikace. Parametr -ShowCommandInfo nahrazuje existující funkci Get-SerializedCommand v modulu Microsoft.PowerShell.Utility, ale skript Get-SerializedCommand je stále k dispozici pro podporu skriptování nižší úrovně.

  • Nová rutina Get-ItemPropertyValue umožňuje získat hodnotu vlastnosti bez použití zápisu s tečkou. Například ve starších verzích Windows PowerShell můžete spuštěním následujícího příkazu získat hodnotu vlastnosti Application Base klíče registru PowerShellEngine: (Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name ApplicationBase). ApplicationBase. Od Windows PowerShell 5.0 můžete spustit rutinu Get-ItemPropertyValue -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name ApplicationBase.

  • Konzola Windows PowerShell teď používá barevné zvýbarvení syntaxe, stejně jako v Windows PowerShell ISE.

  • Nový modul NetworkSwitch obsahuje rutiny, které umožňují použít přepínač, virtuální síť LAN (VLAN) a základní konfiguraci portu síťového přepínače vrstvy 2 pro Windows Server 2012 R2 certifikované síťové přepínače.

  • Do rutin Import-Module a Remove-Module byl přidán parametr FullyQualifiedName pro podporu ukládání více verzí jednoho modulu.

  • Save-Help, Update-Help, Import-PSSession, Export-PSSession a Get-Command mají nový parametr FullyQualifiedModule typu ModuleSpecification. Přidáním tohoto parametru určíte modul podle jeho plně kvalifikovaného názvu.

  • Hodnota $PSVersionTable.PSVersion byla aktualizována na 5.0.

  • WMF 5.0 (PowerShell 5.0) obsahuje modul Pester . Pester je architektura pro testování jednotek pro PowerShell. Poskytuje několik jednoduchých klíčových slov, která umožňují vytvářet testy pro skripty.

Nové funkce v Windows PowerShell Desired State Configuration

  • Windows PowerShell vylepšení jazyka umožňují definovat prostředky Windows PowerShell Desired State Configuration (DSC) pomocí tříd. Import-DscResource je nyní true dynamické klíčové slovo; Windows PowerShell parsuje kořenový modul zadaného modulu a vyhledá třídy, které obsahují atribut DscResource. Teď můžete použít třídy k definování prostředků DSC, ve kterých není vyžadován soubor MOF ani podsložka DSCResource ve složce modulu. Soubor Windows PowerShell modulu může obsahovat několik tříd prostředků DSC.
  • Do následujících rutin v modulu PSDesiredStateConfiguration byl přidán nový parametr ThrottleLimit. Přidáním parametru ThrottleLimit určete počet cílových počítačů nebo zařízení, na kterých má příkaz současně fungovat.
    • Get-DscConfiguration
    • Get-DscConfigurationStatus
    • Get-DscLocalConfigurationManager
    • Restore-DscConfiguration
    • Test-DscConfiguration
    • Compare-DscConfiguration
    • Publish-DscConfiguration
    • Set-DscLocalConfigurationManager
    • Start-DscConfiguration
    • Update-DscConfiguration
  • Při centralizovaném zasílání zpráv o chybách DSC se bohaté informace o chybách nejen protokolují do protokolu událostí, ale dají se odeslat do centrálního umístění k pozdější analýze. Toto centrální umístění můžete použít k ukládání chyb konfigurace DSC, ke kterým došlo u libovolného serveru v jejich prostředí. Po definování serveru sestav v meta-konfiguraci jsou všechny chyby odeslány na server sestav a poté uloženy v databázi. Tuto funkci můžete nastavit bez ohledu na to, jestli je cílový uzel nakonfigurovaný tak, aby načítá konfigurace ze serveru vyžádané replikace.
  • Vylepšení Windows PowerShell ISE usnadňují vytváření prostředků DSC. Teď můžete udělat následující:
    • Vypište všechny prostředky DSC v rámci bloku konfigurace nebo uzlu zadáním ctrl+mezerník na prázdný řádek v rámci bloku.
    • Automatické dokončování vlastností prostředku typu výčtu .
    • Automatické dokončování vlastnosti DependsOn prostředků DSC na základě jiných instancí prostředků v konfiguraci.
    • Vylepšené dokončování tabulátoru hodnot vlastností prostředku.
  • Uživatel teď může spustit prostředek pod zadanou sadou přihlašovacích údajů přidáním atributu PSDscRunAsCredential do bloku Node. Například PSDscRunAsCredential = Get-Credential Contoso\DscUser. Tato funkce je užitečná pro vytváření konfigurací, které spouštějí Instalační službu systému Windows a spustitelné instalační programy, přistupují k podregistru registru pro jednotlivé uživatele nebo provádějí jiné úlohy mimo kontext aktuálního uživatele.
  • Byla přidána podpora 32bitového (založeného na x86) pro klíčové slovo Configuration .
  • Windows PowerShell teď zahrnuje podporu vlastní nápovědy pro konfigurace DSC definovanou přidáním [CmdletBinding()] do vygenerované konfigurační funkce.
  • Nový atribut DscLocalConfigurationManager označuje blok konfigurace jako metakonfiguraci, která se používá ke konfiguraci místního Configuration Manager DSC. Tento atribut omezuje konfiguraci tak, aby obsahovala pouze položky, které konfigurují místní Configuration Manager DSC. Během zpracování tato konfigurace vygeneruje soubor *.meta.mof, který se pak odešle do příslušných cílových uzlů spuštěním rutiny Set-DscLocalConfigurationManager.
  • V Windows PowerShell 5.0 jsou teď povolené částečné konfigurace. Konfigurační dokumenty můžete do uzlu doručovat ve fragmentech. Aby uzel přijímal více fragmentů konfiguračního dokumentu, musí být nejprve nastavena místní Configuration Manager uzlu, aby bylo možné určit očekávané fragmenty.
  • Synchronizace mezi počítači je v DSC nová v Windows PowerShell 5.0. Pomocí předdefinovaných prostředků WaitFor* (WaitForAll, WaitForAny a WaitForSome) teď můžete určit závislosti mezi počítači během spuštění konfigurace bez externích orchestrací. Tyto prostředky poskytují synchronizaci mezi uzly pomocí připojení CIM přes protokol WS-Man. Konfigurace může čekat na změnu konkrétního stavu prostředku jiného počítače.
  • Just Enough Administration (JEA), nová funkce zabezpečení delegování, využívá DSC a Windows PowerShell omezené runspace k zabezpečení podniků před ztrátou dat nebo ohrožením ze strany zaměstnanců, ať už úmyslně nebo neúmyslně. Další informace o funkci JEA, včetně informací o tom, kde si můžete stáhnout prostředek xJEA DSC, najdete v tématu Just Enough Administration.
  • Do modulu PSDesiredStateConfiguration byly přidány následující nové rutiny.
    • Nová rutina Get-DscConfigurationStatus získá z cílového uzlu základní informace o stavu konfigurace. Můžete získat stav poslední konfigurace nebo všech konfigurací.
    • Nová rutina Compare-DscConfiguration porovnává zadanou konfiguraci se skutečným stavem jednoho nebo více cílových uzlů.
    • Nová rutina Publish-DscConfiguration zkopíruje konfigurační soubor MOF do cílového uzlu, ale konfiguraci nepoužije. Konfigurace se použije během dalšího průchodu konzistence nebo při spuštění rutiny Update-DscConfiguration.
    • Nová rutina Test-DscConfiguration umožňuje ověřit, že výsledná konfigurace odpovídá požadované konfiguraci, a vrátí buď Hodnotu True, pokud konfigurace odpovídá požadované konfiguraci, nebo Hodnotu False, pokud skutečná konfigurace neodpovídá požadované konfiguraci.
    • Nová rutina Update-DscConfiguration vynutí zpracování konfigurace. Pokud je místní Configuration Manager v režimu vyžádání replikace, rutina před použitím získá konfiguraci ze serveru vyžádané replikace.

Nové funkce Windows PowerShell ISE

  • Skripty a soubory vzdáleného Windows PowerShell teď můžete upravovat v místní kopii Windows PowerShell ISE spuštěním Enter-PSSession vzdálené relace na počítači, ve kterém jsou uložené soubory, které chcete upravit, a spuštěním cesty PSEdit <a názvu souboru na vzdáleném počítači>. Tato funkce usnadňuje úpravy Windows PowerShell souborů, které jsou uložené v instalaci jádra serveru systému Windows Server, kde Windows PowerShell ise nejde spustit.
  • Windows PowerShell ISE teď podporuje rutinu Start-Transcript.
  • Teď můžete ladit vzdálené skripty v Windows PowerShell ISE.
  • Nový příkaz nabídky Break All (Rozdělit vše ) (Ctrl+B) se pro místní i vzdáleně spuštěné skripty rozdělí do ladicího programu.

Nové funkce ve webových službách Windows PowerShell (rozšíření iis pro správu OData)

  • Od Windows PowerShell 5.0 můžete spuštěním rutiny Export-ODataEndpointProxy, kterou najdete v novém modulu Microsoft.PowerShell.OdataUtils, vygenerovat sadu rutin Windows PowerShell na základě funkcí zpřístupněných daným koncovým bodem OData.

Opravy opravyýchchchů Windows PowerShell 5.0

  • Windows PowerShell 5.0 obsahuje novou implementaci modelu COM, která nabízí výrazné vylepšení výkonu při práci s objekty COM.
  • Při dokončování první karty v relaci Windows PowerShell došlo k významným vylepšením výkonu, které zkracují dobu dokončení tabulátoru téměř o 500 ms.

Nové funkce v Windows PowerShell 4.0

Windows PowerShell 4.0 je zpětně kompatibilní. Rutiny, zprostředkovatele, moduly, moduly, moduly, skripty, funkce a profily navržené pro Windows PowerShell 3.0 a Windows PowerShell 2.0 fungují v Windows PowerShell 4.0 beze změn.

Windows PowerShell 4.0 se ve výchozím nastavení instaluje na Windows 8.1 a Windows Server 2012 R2. Pokud chcete nainstalovat Windows PowerShell 4.0 ve Windows 7 s aktualizací SP1 nebo Windows Server 2008 R2, stáhněte a nainstalujte Windows Management Framework 4.0. Před instalací Windows Management Framework 4.0 si nezapomeňte přečíst podrobnosti o stažení a splňovat všechny požadavky na systém.

Windows PowerShell 4.0 obsahuje následující nové funkce.

Nové funkce v Windows PowerShell

  • Windows PowerShell Desired State Configuration (DSC) je nový systém správy v Windows PowerShell 4.0, který umožňuje nasazení a správu konfiguračních dat pro softwarové služby a prostředí, ve kterém tyto služby běží. Další informace o DSC najdete v tématu Začínáme s Windows PowerShell Desired State Configuration.
  • Uložit nápovědu teď umožňuje uložit nápovědu pro moduly, které jsou nainstalované na vzdálených počítačích. Pomocí Save-Help můžete stáhnout modul Nápověda z klienta připojeného k internetu (na kterém nejsou nutně nainstalované všechny moduly, pro které chcete pomoct) a pak uloženou nápovědu zkopírovat do vzdálené sdílené složky nebo vzdáleného počítače, který nemá přístup k internetu.
  • Ladicí program Windows PowerShell byl vylepšen tak, aby umožňoval ladění pracovních postupů Windows PowerShell a skriptů spuštěných ve vzdálených počítačích. Windows PowerShell pracovní postupy se teď dají ladit na úrovni skriptu z příkazového řádku Windows PowerShell nebo Windows PowerShell ISE. Windows PowerShell skripty, včetně pracovních postupů skriptů, se teď dají ladit přes vzdálené relace. Relace vzdáleného ladění se zachovají v průběhu Windows PowerShell vzdálených relací, které jsou odpojeny a později znovu připojeny.
  • Parametr RunNow pro Register-ScheduledJob a Set-ScheduledJob eliminuje nutnost nastavit okamžité počáteční datum a čas úloh pomocí parametru Trigger .
  • Invoke-RestMethod a Invoke-WebRequest teď umožňují nastavit všechny hlavičky pomocí parametru Headers. I když tento parametr vždy existoval, byl jedním z několika parametrů webových rutin, jejichž výsledkem byly výjimky nebo chyby.
  • Get-Module má nový parametr FullyQualifiedName typu ModuleSpecification[]. Parametr FullyQualifiedName Get-Module teď umožňuje zadat modul pomocí názvu, verze a volitelně jeho identifikátoru GUID.
  • Výchozí nastavení zásad spouštění v Windows Server 2012 R2 je RemoteSigned. Na Windows 8.1 nedojde k žádné změně výchozího nastavení.
  • Počínaje verzí Windows PowerShell 4.0 se podporuje vyvolání metody pomocí dynamických názvů metod. Proměnnou můžete použít k uložení názvu metody a poté dynamicky vyvolat metodu voláním proměnné.
  • Asynchronní úlohy pracovního postupu již nejsou odstraněny po uplynutí časového limitu určeného společným parametrem pracovního postupu PSElapsedTimeoutSec .
  • Do rutin New-JobTrigger a Set-JobTrigger byl přidán nový parametr RepeatIndefinitely. Tím se eliminuje nutnost zadat hodnotu TimeSpan.MaxValueparametru RepetitionDuration , aby se naplánovaná úloha spouštěla opakovaně po neomezenou dobu.
  • Do rutin Enable-JobTrigger a Disable-JobTrigger byl přidán parametr Passthru. Parametr Passthru zobrazí všechny objekty vytvořené nebo upravené příkazem.
  • Názvy parametrů pro zadání pracovní skupiny v rutinách Add-Computer a Remove-Computer jsou teď konzistentní. Obě rutiny teď používají parametr WorkgroupName.
  • Byl přidán nový společný parametr PipelineVariable. PipelineVariable umožňuje uložit výsledky příkazu s kanálem (nebo jeho části) jako proměnnou, kterou je možné předat zbývající částí kanálu.
  • Filtrování kolekcí pomocí syntaxe metody se teď podporuje. To znamená, že teď můžete filtrovat kolekci objektů pomocí zjednodušené syntaxe, která se podobá syntaxi Where() nebo Where-Object formátované jako volání metody. Následuje příklad: (Get-Process).where({$_. Název -match 'powershell'})
  • Rutina Get-Process má nový parametr přepínače IncludeUserName.
  • Byla přidána nová rutina Get-FileHash, která vrací hodnotu hash souboru v jednom z několika formátů pro zadaný soubor.
  • Pokud modul v Windows PowerShell 4.0 používá ve svém manifestu klíč DefaultCommandPrefix nebo pokud uživatel importuje modul s parametrem Prefix, zobrazí vlastnost ExportedCommands modulu příkazy v modulu s předponou. Když spouštíte příkazy pomocí syntaxe kvalifikované pro modul, ModuleName\CommandName, názvy příkazů musí obsahovat předponu.
  • Hodnota $PSVersionTable.PSVersion byla aktualizována na 4.0.
  • Chování operátoru where() se změnilo. Collection.Where('property -match name') Přijetí řetězcového výrazu ve formátu "Property -CompareOperator Value" se už nepodporuje. Operátor Where() však přijímá řetězcové výrazy ve formátu scriptblock; tato funkce je stále podporována.

Nové funkce integrovaného skriptovacího prostředí (ISE) Windows PowerShell

  • Windows PowerShell ISE podporuje ladění pracovních postupů Windows PowerShell i ladění vzdálených skriptů.
  • Byla přidána podpora IntelliSense pro poskytovatele a konfigurace Windows PowerShell Desired State Configuration.

Nové funkce v pracovním postupu Windows PowerShell

  • Byla přidána podpora pro nový společný parametr PipelineVariable v kontextu iterativních kanálů, jako jsou kanály používané nástrojem System Center Orchestrator. to znamená, že kanály, které spouští příkazy jednoduše zleva doprava, na rozdíl od prokládání spuštění pomocí streamování.
  • Vazby parametrů byly výrazně vylepšeny tak, aby fungovaly mimo scénáře dokončování tabulátorem, například s příkazy, které v aktuálním prostředí runspace neexistují.
  • Do pracovního postupu Windows PowerShell byla přidána podpora vlastních aktivit kontejnerů. Pokud je parametr aktivity typu Activity, Activity[] (nebo je obecnou kolekcí aktivit) a uživatel zadal blok skriptu jako argument, pak Windows PowerShell Workflow převede blok skriptu na XAML, stejně jako u normální Windows PowerShell kompilace skriptu na pracovní postup.
  • Po chybovém ukončení se pracovní postup Windows PowerShell automaticky znovu připojí ke spravovaným uzlům.
  • Pomocí vlastnosti ThrottleLimit teď můžete příkazy aktivity Foreach -Parallel omezovat.
  • Společný parametr ErrorAction má novou platnou hodnotu Suspend, která je určena výhradně pro pracovní postupy.
  • Koncový bod pracovního postupu se teď automaticky zavře, pokud neexistují žádné aktivní relace, žádné probíhající úlohy a žádné čekající úlohy. Tato funkce při splnění podmínek automatického uzavření šetří prostředky v počítači, který funguje jako server pracovního postupu.

Nové funkce ve webových službách Windows PowerShell

  • Pokud dojde k chybě ve webových službách Windows PowerShell (PSWS, označované také jako rozšíření služby IIS pro správu OData), zatímco je spuštěna rutina, volajícímu se vrátí podrobnější chybové zprávy. Kódy chyb se navíc řídí pokyny pro kódy chyb rozhraní Windows Azure REST API.
  • Koncový bod teď může definovat verzi rozhraní API a také vynutit použití konkrétní verze rozhraní API. Kdykoli dojde k neshodě verzí mezi klientem a serverem, zobrazí se klientovi i serveru chyby.
  • Správa schématu odesílání byla zjednodušena automatickým generováním hodnot pro všechna chybějící pole ve schématu. Generování probíhá jako užitečný výchozí bod, a to i v případě, že schéma odesílání neexistuje.
  • Zpracování typů v PSWS bylo vylepšeno tak, aby podporovalo typy, které používají jiný konstruktor než výchozí konstruktor, protože se chová podobně jako PSTypeConverter v Windows PowerShell. To vám umožní používat komplexní typy s PSWS.
  • PSWS teď umožňuje rozbalení přidružené instance při spuštění dotazu. U většího binárního obsahu (například obrázků, zvuku nebo videa) jsou náklady na přenos významné a je lepší přenášet binární data bez kódování. PSWS používá pro přenos bez kódování datové proudy pojmenovaných prostředků. Pojmenovaný stream prostředku je vlastností entity typu Edm.Stream . Každý pojmenovaný datový proud prostředků má samostatný identifikátor URI pro operace GET nebo UPDATE.
  • Akce OData teď poskytují mechanismus pro vyvolání jiných metod než CRUD (vytvoření, čtení, aktualizace a odstranění) u prostředku. Akci můžete vyvolat odesláním požadavku HTTP POST na identifikátor URI, který je definován pro danou akci. Parametry pro akci jsou definovány v textu požadavku POST.
  • Aby byly v souladu s pokyny Pro Windows Azure, měly by být všechny adresy URL zjednodušené. Změna zahrnutá do klíčového segmentu umožňuje reprezentovat jednotlivé klíče jako segmenty. Všimněte si, že odkazy, které používají více hodnot klíčů, vyžadují hodnoty oddělené čárkami v závorce jako předtím.
  • Před touto verzí PSWS bylo jediným způsobem, jak provádět operace Vytvoření, Aktualizace nebo Odstranění, volání post, put nebo delete u prostředku nejvyšší úrovně. Novinkou v této verzi PSWS je, že operace prostředků s omezením umožňují uživatelům dosáhnout stejných výsledků, když se ke stejnému prostředku dostanou méně přímo, což se blíží, jako by byly tyto prostředky obsažené.

Nové funkce v Windows PowerShell Web Accessu

  • Ve webové konzole Windows PowerShell Web Access se můžete odpojit od existujících relací a znovu se k tomu připojit. Tlačítko Uložit ve webové konzole umožňuje odpojit se od relace, aniž byste ji odstranili, a znovu se k relaci připojit znovu.
  • Výchozí parametry se dají zobrazit na přihlašovací stránce. Pokud chcete zobrazit výchozí parametry, nakonfigurujte hodnoty pro všechna nastavení zobrazená v oblasti Volitelné nastavení připojení na přihlašovací stránce v souboru s názvemweb.config. Souborweb.config můžete použít ke konfiguraci všech volitelných nastavení připojení s výjimkou druhé nebo alternativní sady přihlašovacích údajů.
  • V Windows Server 2012 R2 můžete vzdáleně spravovat autorizační pravidla pro Windows PowerShell Web Access. Rutiny Add-PswaAuthorizationRule a Test-PswaAuthorizationRule teď obsahují parametr Credential, který správcům umožňuje spravovat autorizační pravidla ze vzdáleného počítače nebo v relaci Windows PowerShell Web Access.
  • Pomocí nové karty prohlížeče pro každou relaci teď můžete mít více relací Windows PowerShell Web Accessu v jedné relaci prohlížeče. Pro připojení k nové relaci ve webové konzole Windows PowerShell už nemusíte otevírat novou relaci prohlížeče.

Opravy opravy opravy chyb ve Windows PowerShell 4.0

  • Get-Counter teď může vracet čítače, které obsahují znak apostrofu ve francouzských edicích windows.
  • Nyní můžete zobrazit GetType metodu deserializované objekty.
  • #Requires příkazy teď uživatelům umožňují v případě potřeby vyžadovat přístupová práva správce.
  • Rutina Import-Csv teď ignoruje prázdné řádky.
  • Byl opraven problém, kdy Windows PowerShell ISE využívá příliš mnoho paměti při spuštění příkazu Invoke-WebRequest.
  • Get-Module teď zobrazuje verze modulů ve sloupci Verze .
  • Remove-Item -Recurse teď odebere položky z podsložek podle očekávání.
  • Do výstupních objektů Get-Process byla přidána vlastnost UserName.
  • Rutina Invoke-RestMethod teď vrací všechny dostupné výsledky.
  • Funkce Add-Member se teď projeví u zatřiďovacích tabulek, i když k zatřiďovacím tabulkům ještě nedošlo.
  • Select-Object -Expand už neselhává nebo generuje výjimku, pokud je hodnota vlastnosti null nebo prázdná.
  • Get-Process se teď dá použít v kanálu s dalšími příkazy, které z objektů získávají vlastnost ComputerName .
  • Funkce ConvertTo-Json a ConvertFrom-Json teď můžou přijímat termíny v dvojitých uvozovkách a jejich chybové zprávy jsou teď lokalizovatelné.
  • Get-Job teď vrátí všechny dokončené naplánované úlohy, a to i v nových relacích.
  • Byly opraveny problémy s připojením a odpojením virtuálních pevných disků pomocí zprostředkovatele FileSystem v Windows PowerShell 4.0. Windows PowerShell teď dokáže rozpoznat nové jednotky, když jsou připojené ve stejné relaci.
  • Pro práci s jejich typy úloh už nemusíte explicitně načítat moduly ScheduledJob nebo Workflow .
  • Byly vylepšeny výkon v procesu importu pracovních postupů, které definují vnořené pracovní postupy; tento proces je teď rychlejší.

Nové funkce v Windows PowerShell 3.0

Windows PowerShell 3.0 obsahuje následující nové funkce.

Pracovní postup Windows PowerShell

Windows PowerShell Workflow přináší do Windows PowerShell sílu Windows Workflow Foundation. Pracovní postupy můžete psát v JAZYCE XAML nebo v Windows PowerShell jazyce a spouštět je stejně jako rutinu. Rutina Get-Command získá příkazy pracovního postupu a rutina získá nápovědu Get-Help pro pracovní postupy.

Pracovní postupy jsou posloupnosti aktivit správy multipočítačů, které jsou dlouhotrvající, opakovatelné, časté, paralelizovatelné, přerušitelné, pozastavené a restartovatelné. Pracovní postupy mohou být obnoveny úmyslným nebo náhodným přerušením, jako je výpadek sítě, restartování Systému Windows nebo výpadky napájení.

Pracovní postupy jsou také přenosné; Je možné je exportovat jako nebo importovat ze souborů XAML. Můžete napsat vlastní konfigurace relací, které umožňují spuštění pracovního postupu nebo aktivit v pracovním postupu delegovanými nebo podřízenými uživateli.

Níže jsou uvedené výhody pracovního postupu Windows PowerShell.

  • Automatizace sekvencovaných, dlouhotrvajících úloh
  • Vzdálené monitorování dlouhotrvajících úloh. Stav a průběh aktivit jsou kdykoli viditelné.
  • Správa multipočítačů. Současně spouštět úkoly jako pracovní postupy na stovkách spravovaných uzlů. Windows PowerShell Workflow obsahuje integrovanou knihovnu běžných parametrů správy, jako je PSComputerName, které umožňují scénáře správy s více počítači.
  • Provádění složitých procesů s jednou úlohou. Můžete zkombinovat související skripty, které implementují celý scénář od konce do jednoho pracovního postupu.
  • Trvalost: Pracovní postup je uložen (nebo je zaměřen na kontrolu) v určitých bodech definovaných jeho autorem, takže můžete obnovit pracovní postup od posledního trvalého úkolu (nebo kontrolního bodu) namísto restartování pracovního postupu od začátku.
  • Robustnost. Automatizované obnovení po selhání. Pracovní postupy přežijí plánovaná i neplánovaná restartování. Můžete pozastavit provádění pracovního postupu a poté obnovit pracovní postup od posledního bodu trvalosti. Autoři pracovních postupů můžou určit konkrétní aktivity, které se mají znovu spustit v případě selhání na jednom nebo více spravovaných uzlech.
  • Možnost odpojení, opětovného připojení a spuštění v odpojených relacích Uživatelé se mohou připojit a odpojit od serveru pracovního postupu, ale pracovní postup běží nepřetržitě. Můžete se odhlásit z klientského počítače nebo restartovat klientský počítač a monitorovat provádění pracovního postupu z jiného počítače, aniž byste přerušili pracovní postup.
  • Plánování. Úkoly pracovního postupu je možné naplánovat jako jakoukoli rutinu nebo skript Windows PowerShell.
  • Pracovní postup a omezování připojení. Provádění pracovních postupů a připojení k uzlům je možné omezovat, což umožňuje scénáře škálovatelnosti a vysoké dostupnosti.

Windows PowerShell Web Access

Windows PowerShell Web Access je funkce Windows Server 2012, která uživatelům umožňuje spouštět příkazy a skripty Windows PowerShell ve webové konzole. Zařízení, která používají webovou konzolu, nevyžadují Windows PowerShell, software pro vzdálenou správu ani instalace modulů plug-in prohlížeče. Vyžaduje se pouze správně nakonfigurovaná brána Windows PowerShell Web Access a prohlížeč klientského zařízení, který podporuje JavaScript a přijímá soubory cookie.

Další informace najdete v tématu Nasazení Windows PowerShell Web Accessu.

Nové funkce Windows PowerShell ISE

Pro Windows PowerShell 3.0 nabízí Windows PowerShell integrované skriptovací prostředí (ISE) řadu nových funkcí, včetně IntelliSense, okna Show-Command, sjednoceného podokna konzoly, fragmentů kódu, párování závorek, rozbalení a sbalení oddílů, automatického ukládání, seznamu posledních položek, bohatého kopírování, blokování kopírování a úplné podpory psaní Windows PowerShell skriptu. Pracovní postupy. Další informace najdete v tématu about_Windows_PowerShell_ISE.

Podpora rozhraní Microsoft .NET Framework 4

Windows PowerShell je sestavený v prostředí Common Language Runtime 4.0. Autoři rutin, skriptů a pracovních postupů můžou používat nové třídy rozhraní Microsoft .NET Framework 4 v Windows PowerShell s funkcemi, mezi které patří Kompatibilita a nasazení aplikací, Managed Extensibility Framework, Paralelní computing, Sítě, Windows Communication Foundation a Windows Workflow Foundation.

Podpora předinstalačního prostředí Windows

Windows PowerShell 3.0 je volitelná součást prostředí Windows PE (Windows PE) 4.0 pro Windows 8. Prostředí Windows PE je minimální operační systém, který spustí počítač, který nemá žádný operační systém, a připraví ho k instalaci systému Windows. Prostředí Windows PE je možné použít k dělení na oddíly a formátování pevných disků, kopírování imagí disků do počítače a zahájení instalace systému Windows ze sdílené síťové složky. Windows PowerShell 3.0 je možné použít v prostředí Windows PE ke správě scénářů nasazení, diagnostiky a obnovení.

Odpojené relace

Počínaje Windows PowerShell 3.0 se na vzdáleném počítači ukládají trvalé relace spravované uživatelem ("PSSessions"), které vytvoříte pomocí rutiny New-PSSession. Už nejsou závislé na relaci, ve které byly vytvořeny.

Teď se můžete odpojit od relace, aniž byste narušili příkazy spuštěné v relaci. Můžete ukončit relaci a vypnout počítač. Později se můžete znovu připojit k relaci z jiné relace na stejném nebo na jiném počítači.

Parametr ComputerName rutiny Get-PSSession teď získá všechny relace uživatele, které se připojují k počítači, i když byly spuštěny v jiné relaci na jiném počítači. Můžete se připojit k relacím, získat výsledky příkazů, spustit nové příkazy a pak se od relace odpojit.

Byly přidány nové rutiny pro podporu funkce Odpojené relace, včetně Disconnect-PSSession, Connect-PSSessiona Receive-PSSession, a byly přidány nové parametry do rutin, které spravují psSessions, například parametr Invoke-CommandInDisconnectedSession rutiny.

Funkce Odpojené relace je podporována pouze v případech, kdy počítače na původním ("klientském") i ukončovacím ("serveru") připojení běží Windows PowerShell 3.0.

Robustní připojení relace

Windows PowerShell 3.0 detekuje neočekávané ztráty připojení mezi klientem a serverem a pokusí se obnovit připojení a automaticky obnovit provádění. Pokud připojení klient-server nelze obnovit ve přiděleném čase, bude uživatel upozorněn a relace se odpojí. Během pokusu o opětovné připojení Windows PowerShell uživateli poskytuje nepřetržitou zpětnou vazbu.

Pokud byla odpojená relace spuštěna pomocí příkazu InvokeCommand, Windows PowerShell vytvoří pro odpojenou relaci úlohu, která usnadňuje opětovné připojení a obnovení provádění.

Tyto funkce poskytují spolehlivější a obnovitelné prostředí vzdálené komunikace a umožňují uživatelům provádět dlouhotrvající úlohy, které vyžadují robustní relace, jako jsou pracovní postupy.

Aktualizovatelný systém nápovědy

Teď si můžete stáhnout aktualizované soubory nápovědy pro rutiny v modulech. Rutina Update-Help identifikuje nejnovější soubory nápovědy, stáhne je z internetu, rozbalí je, ověří a nainstaluje do správného adresáře specifického pro daný modul.

Pokud chcete použít aktualizované soubory nápovědy, stačí zadat Get-Help. Systém Windows ani Windows PowerShell nemusíte restartovat. Pokud chcete aktualizovat nápovědu pro moduly v adresáři $pshome, spusťte Windows PowerShell pomocí možnosti Spustit jako správce.

Pro podporu uživatelů, kteří nemají přístup k internetu a uživatelů za branami firewall, stáhne nová Save-Help rutina soubory nápovědy do adresáře systému souborů, například do sdílené složky. Uživatelé pak můžou pomocí rutiny Update-Help získat aktualizované soubory nápovědy ze sdílené složky.

Pomocí rutiny Update-Help můžete aktualizovat soubory nápovědy pro všechny nebo konkrétní moduly ve všech podporovaných jazykových verzích uživatelského rozhraní. Do Windows PowerShell profilu můžete dokonce vložit Update-Help příkaz. Ve výchozím nastavení Windows PowerShell stahovat soubory nápovědy pro modul maximálně jednou denně.

Windows 8 a Windows Server 2012 moduly neobsahují soubory nápovědy. Pokud chcete stáhnout nejnovější soubory nápovědy, zadejte Update-Help. Další informace získáte zadáním Get-Help (bez parametrů) nebo about_Updatable_Help.

Pokud soubory nápovědy pro rutinu nejsou v počítači nainstalované, rutina Get-Help teď zobrazí automaticky vygenerovanou nápovědu. Automaticky vygenerovaná nápověda obsahuje syntaxi příkazu a pokyny pro použití rutiny Update-Help ke stažení souborů nápovědy.

Každý autor modulu může pro svůj modul podporovat aktualizovatelnou nápovědu. Do modulu můžete zahrnout soubory nápovědy a aktualizovat je pomocí aktualizovatelné nápovědy nebo soubory nápovědy vynechat a nainstalovat je pomocí aktualizovatelné nápovědy. Další informace o podpoře aktualizovatelné nápovědy najdete v tématu Podpora aktualizovatelné nápovědy.

Rozšířená online nápověda

Windows PowerShell online nápověda je cenným prostředkem pro všechny uživatele, ale je obzvláště důležitá pro uživatele, kteří nemají nebo nemůžou nainstalovat aktualizované soubory nápovědy.

Pokud chcete získat online nápovědu pro jakoukoli rutinu Windows PowerShell, zadejte:

Get-Help <cmdlet-name> -Online

Windows PowerShell otevřete online verzi tématu nápovědy ve výchozím internetovém prohlížeči.

Funkce Get-Help -Online v Windows PowerShell 3.0 je teď ještě výkonnější, protože funguje i v případě, že v počítači nejsou nainstalované soubory nápovědy pro rutinu. Funkce Get-Help -Online získá identifikátor URI pro online téma nápovědy z vlastnosti HelpUri rutin a pokročilých funkcí.

PS C:\>(Get-Command Get-ScheduledJob).HelpUri
https://go.microsoft.com/fwlink/?LinkID=223923

Počínaje Windows PowerShell 3.0 mohou autoři rutin jazyka C# naplnit vlastnost HelpUri vytvořením atributu HelpUri ve třídě rutin. Autoři pokročilých funkcí mohou definovat vlastnost HelpUriatributu CmdletBinding . Hodnota vlastnosti HelpUri musí začínat řetězcem "http" nebo "https".

Hodnotu HelpUri můžete také zahrnout do prvního souvisejícího odkazu souboru nápovědy rutiny založeného na JAZYCE XML nebo do . Direktiva link nápovědy založené na komentářích ve funkci

Další informace o podpoře online nápovědy najdete v tématu Podpora online nápovědy.

Integrace CIM

Windows PowerShell 3.0 zahrnuje podporu modelu CIM (Common Information Model), který poskytuje společné definice informací o správě systémů, sítí, aplikací a služeb a umožňuje jim výměnu informací o správě mezi heterogenními systémy. Podpora CIM v Windows PowerShell 3.0, včetně možnosti vytvářet Windows PowerShell rutiny založené na nových nebo existujících třídách CIM, příkazů založených na souborech XML definice rutin a podpory cim .NET Framework. Rozhraní API, rutiny správy CIM a poskytovatelé rozhraní WMI 2.0.

Konfigurační soubory relace

Počínaje Windows PowerShell 3.0 můžete navrhnout vlastní konfiguraci relace pomocí souboru. Nový konfigurační soubor relace umožňuje určit prostředí relací, které používají konfiguraci relace, včetně modulů, skriptů a formátovacích souborů, které se načítají do relací, jaké rutiny a jazykové prvky můžou uživatelé používat, jaké moduly a skripty můžou spouštět a jaké proměnné můžou zobrazit.

Můžete navrhnout relaci, ve které uživatelé můžou spouštět rutiny jenom z jednoho konkrétního modulu, nebo relaci, ve které mají uživatelé úplný jazyk, přístup ke všem modulům a přístup ke skriptům, které provádějí pokročilé úlohy.

V předchozích verzích Windows PowerShell bylo řízení na této úrovni dostupné jenom těm, kteří mohli psát program v jazyce C# nebo složitý spouštěcí skript. Každý člen skupiny Administrators v počítači teď může přizpůsobit konfiguraci relace pomocí konfiguračního souboru.

K vytvoření konfiguračního souboru relace použijte rutinu New-PSSessionConfigurationFile . Pokud chcete použít konfigurační soubor relace na konfiguraci relace, použijte Register-PSSessionConfiguration rutiny Set-PSSessionConfiguration nebo.

Další informace najdete v tématech about_Session_Configuration_Files a New-PSSessionConfigurationFile.

Integrace naplánovaných úloh a plánovače úloh

Teď můžete plánovat Windows PowerShell úlohy na pozadí a spravovat je v Windows PowerShell a v Plánovači úloh.

Windows PowerShell naplánované úlohy jsou užitečným hybridem úloh Windows PowerShell úloh na pozadí a úloh Plánovače úloh.

Stejně jako Windows PowerShell úlohy na pozadí se naplánované úlohy spouští asynchronně na pozadí. Instance naplánovaných úloh, které se dokončily, je možné spravovat pomocí rutin úloh, například Start-Job a Get-Job.

Podobně jako úlohy Plánovače úloh můžete naplánované úlohy spouštět podle jednorázového nebo opakovaného plánu nebo v reakci na akci nebo událost. Naplánované úlohy můžete zobrazit a spravovat v Plánovači úloh, podle potřeby je povolit a zakázat, spouštět je nebo používat jako šablony a nastavit podmínky, za kterých se úlohy spustí.

Kromě toho mají naplánované úlohy přizpůsobenou sadu rutin pro jejich správu. Rutiny umožňují vytvářet, upravovat, spravovat, zakazovat a znovu povolovat naplánované úlohy, vytvářet triggery naplánovaných úloh a nastavovat možnosti naplánovaných úloh.

Další informace o naplánovaných úlohách najdete v tématu about_Scheduled_Jobs.

Vylepšení jazyka Windows PowerShell

Windows PowerShell 3.0 obsahuje mnoho funkcí, které jsou navržené tak, aby zjednodušily jeho jazyk, snadněji se používaly a aby se zabránilo běžným chybám. Mezi vylepšení patří výčet vlastností, počet a vlastnosti délky skalárních objektů, nové operátory přesměrování, modifikátor oboru $Using, automatická proměnná PSItem, formátování flexibilních skriptů, atributy proměnných, zjednodušené argumenty atributů, názvy číselných příkazů, operátor Stop-Parsing, vylepšené splatting pole, nové bitové operátory, uspořádané slovníky, přetypování PSCustomObject a vylepšená nápověda založená na komentářích.

Nové základní rutiny

Do instalace Windows PowerShell byly přidány nové rutiny, včetně rutin pro správu naplánovaných úloh, odpojených relací, integrace CIM a aktualizovatelného systému nápovědy.

  • CimCmdlets
    • Get-CimAssociatedInstance
    • Get-CimClass
    • Get-CimInstance
    • Get-CimSession
    • Invoke-CimMethod
    • New-CimInstance
    • New-CimSession
    • New-CimSessionOption
    • Register-CimIndicationEvent
    • Remove-CimInstance
    • Remove-CimSession
    • Set-CimInstance
  • Microsoft.PowerShell.Core
    • Connect-PSSession
    • Disconnect-PSSession
    • New-PSSessionConfigurationFile
    • New-PSTransportOption
    • Receive-PSSession
    • Resume-Job
    • Save-Help
    • Suspend-Job
    • Test-PSSessionConfigurationFile
    • Update-Help
  • Microsoft.PowerShell.Diagnostics
    • New-WinEvent
  • Microsoft.PowerShell.Management
    • Get-ControlPanelItem
    • Rename-Computer
    • Show-ControlPanelItem
  • Microsoft.PowerShell.Utility
    • ConvertFrom-Json
    • ConvertTo-Json
    • Get-TypeData
    • Invoke-RestMethod
    • Invoke-WebRequest
    • Remove-TypeData
    • Show-Command
    • Unblock-File
  • PSScheduledJob
    • Add-JobTrigger
    • Disable-JobTrigger
    • Disable-ScheduledJob
    • Enable-JobTrigger
    • Enable-ScheduledJob
    • Get-JobTrigger
    • Get-ScheduledJob
    • Get-ScheduledJobOption
    • New-JobTrigger
    • New-ScheduledJobOption
    • Register-ScheduledJob
    • Set-JobTrigger
    • Set-ScheduledJob
    • Set-ScheduledJobOption
    • Unregister-ScheduledJob
  • PSWorkflow
    • New-PSWorkflowExecutionOption
    • New-PSWorkflowSession
  • PSWorkflowUtility
    • Invoke-AsWorkflow
  • ISE
    • Get-IseSnippet
    • Import-IseSnippet
    • New-IseSnippet

Vylepšení existujících základních rutin a zprostředkovatelů

Windows PowerShell 3.0 obsahuje nové funkce pro existující rutiny, včetně zjednodušené syntaxe, a nové parametry pro následující rutiny: Počítačové rutiny, rutiny CSV, Get-ChildItem, Get-Command, Get-Content, Get-History, Measure-Object, Security Rutins, Select-Object, Select-String, Split-Path, Start-Process, Tee-Object, Test-Connection, Add-Member a rutiny WMI.

Výrazně se zlepšili také poskytovatelé Windows PowerShell, včetně podpory poskytovatelů certifikátů pro správu certifikátů SSL (Secure Socket Layer) pro hostování webů, podpory přihlašovacích údajů, trvalých síťových jednotek a alternativních datových proudů na jednotkách systému souborů.

Import a zjišťování vzdálených modulů

Windows PowerShell 3.0 rozšiřuje možnosti zjišťování modulů, importu a implicitní vzdálené komunikace na vzdálených počítačích. Rutiny modulu získávají moduly na vzdálených počítačích a importují moduly do vzdáleného nebo místního počítače pomocí Windows PowerShell vzdálené komunikace. Nová podpora relací CIM umožňuje používat CIM a rozhraní WMI ke správě počítačů, které nejsou systémem Windows, importováním příkazů do místního počítače, které běží implicitně na vzdáleném počítači.

Další informace najdete v tématech nápovědy k rutinám Get-Module a Import-Module .

Rozšířené dokončování karet

Dokončování tabulátoru v konzole Windows PowerShell teď dokončí názvy rutin, parametrů, hodnot parametrů, výčtů, typů rozhraní .NET Framework, objektů COM, skrytých adresářů a dalších. Funkce dokončování tabulátoru je kompletně přepsána na základě nového analyzátoru a abstraktního stromu syntaxe, aby podporovala více scénářů, včetně stromů analýzy v paměti a dokončování karet uprostřed.

Automatické načítání modulu

Rutina Get-Command teď získá všechny rutiny a funkce ze všech modulů nainstalovaných v počítači, a to i v případě, že modul není importován do aktuální relace.

Když získáte rutinu, kterou potřebujete, můžete ji okamžitě použít bez importu modulů. Windows PowerShell moduly se teď importují automaticky, když v modulu použijete libovolnou rutinu. Už nemusíte modul hledat a importovat ho, abyste mohli používat jeho rutiny.

Automatický import modulů se aktivuje pomocí rutiny v příkazu, spuštění Get-Command pro rutinu bez zástupných znaků nebo Get-Help spuštění pro rutinu bez zástupných znaků.

Pomocí proměnné předvoleb $PSModuleAutoLoadingPreference můžete povolit, zakázat a nakonfigurovat automatický import modulů.

Další informace najdete v tématech about_Modules, about_Preference_Variables a v tématech nápovědy k Get-Command rutinám a Import-Module .

Vylepšení prostředí modulů

Windows PowerShell 3.0 přináší pokročilou podporu funkcí pro moduly, včetně následujících nových funkcí.

  1. Protokolování modulů pro jednotlivé moduly (LogPipelineExecutionDetails) a nové nastavení Zásady skupiny "Zapnout protokolování modulů"
  2. Rozšířené objekty modulu, které zpřístupňují hodnoty z manifestu modulu
  3. Nová vlastnost ExportedCommands modulů, včetně vnořených modulů, která kombinuje příkazy všech typů
  4. Vylepšené zjišťování dostupných (neimportovaných) modulů, včetně povolení parametrů Path a ListAvailable ve stejném příkazu
  5. Nový klíč DefaultCommandPrefix v manifestech modulu, který zabraňuje konfliktům názvů bez změny kódu modulu.
  6. Vylepšené požadavky na moduly, včetně plně kvalifikovaných požadovaných modulů s verzí a identifikátorem GUID a automatického importu požadovaných modulů
  7. Tišší a jednodušší provoz rutiny New-ModuleManifest .
  8. Nový parametr modulu pro #Requires
  9. Vylepšená rutina Import-Module s parametry MinimumVersion i RequiredVersion

Zjednodušené zjišťování příkazů

Pokud chcete zjistit dostupné příkazy pro vaši relaci, nemusíte už importovat všechny moduly. V Windows PowerShell 3.0 rutina Get-Command získá všechny příkazy ze všech nainstalovaných modulů. A pokud použijete příkaz, modul, který příkaz exportuje, se automaticky naimportuje do vaší relace.

Nová Show-Command rutina je určená speciálně pro začátečníky. Příkazy můžete vyhledat v okně. Můžete zobrazit všechny příkazy nebo filtrovat podle modulu, importovat modul kliknutím na tlačítko, pomocí textových polí a rozevíracích seznamů vytvořit platný příkaz a pak příkaz zkopírovat nebo spustit, aniž byste museli opustit okno.

Vylepšená podpora protokolování, diagnostiky a Zásady skupiny

Windows PowerShell 3.0 zlepšuje podporu protokolování a trasování pro příkazy a moduly s podporou trasování událostí v protokolech windows, upravitelnou vlastnost LogPipelineExecutionDetails modulů a nastavení Zásady skupiny "Zapnout protokolování modulů". Hodnoty parametrů teď můžete získat z podrobností protokolu zobrazením vlastností protokolu.

Vylepšení formátování a výstupu

Nová vylepšení formátování a výstupu zlepšují efektivitu všech uživatelů Windows PowerShell. Mezi vylepšení patří přesměrování výstupu pro všechny streamy, rozšířená rutina Update-Type, která dynamicky přidává typy bez souborů Format.ps1xml, zalamování slov ve výstupu, výchozí vlastnosti formátování vlastních objektů, typ PSCustomObject , vylepšené formátování objektů WMI a heterogenních objektů a podporu zjišťování přetížení metod.

Rozšířené prostředí hostitele konzoly

Hostitelský program konzoly Windows PowerShell obsahuje nové funkce v Windows PowerShell 3.0, včetně jednovláknového apartmánu ve výchozím nastavení. Nová možnost Spustit pomocí PowerShellu v Průzkumník souborů umožňuje spouštět skripty v neomezené relaci kliknutím pravým tlačítkem myši. Nová logika spuštění hostitele konzoly se spustí Windows PowerShell rychlejší a nová písma umožňují přizpůsobit známé prostředí okna konzoly.

Nová rutina a rozhraní API pro hostování

Nové rozhraní API pro rutiny a rozhraní API pro hostování zahrnují veřejná rozhraní API ast (Advanced Syntax Tree) a rozhraní API pro stránkování kanálů, vnořené kanály, dokončování karet fondů runspace, Windows RT, zastaralý atribut rutiny a vlastnosti Slovesa a podstatného jména objektu FunctionInfo.

Zvýšení výkonu

Významná vylepšení výkonu v Windows PowerShell pocházejí z nového analyzátoru jazyka, který je založený na jazyce DLR (Dynamic Runtime Language) v rozhraní .NET Framework 4. spolu s kompilací skriptů za běhu, vylepšeními spolehlivosti modulu a změnami algoritmu, které zlepšují jeho výkon, zejména při vyhledávání síťových Get-ChildItem sdílených složek.

Podpora spustit jako a sdíleného hostitele

Windows PowerShell 3.0 zahrnuje podporu funkcí Spustit jako a sdíleného hostitele.

Funkce Spustit jako, navržená pro Windows PowerShell pracovní postup, umožňuje uživatelům konfigurace relace vytvářet relace, které se spouští s oprávněním sdíleného uživatelského účtu. To umožňuje méně privilegovaným uživatelům spouštět konkrétní příkazy a skripty s oprávněními správce a snižuje potřebu přidávání méně starších uživatelů do skupiny Administrators.

Funkce SharedHost umožňuje více uživatelům na více počítačích připojit se k relaci pracovního postupu současně a sledovat průběh pracovního postupu. Uživatelé mohou spustit pracovní postup na jednom počítači a pak se připojit k relaci pracovního postupu na jiném počítači, aniž by relaci odpojili od původního počítače. Uživatelé musí mít stejná oprávnění a musí používat stejnou konfiguraci relace. Další informace najdete v tématu Spuštění pracovního postupu Windows PowerShell v Začínáme s pracovním postupem Windows PowerShell.

Vylepšení speciálního zpracování znaků

Aby se zlepšila schopnost Windows PowerShell 3.0 interpretovat a správně zpracovávat speciální znaky, je parametr LiteralPath, který zpracovává speciální znaky v cestách, platný pro téměř všechny rutiny, které mají parametr Path, včetně rutin new Update-Help a Save-Help . Analyzátor obsahuje také speciální logiku pro zlepšení zpracování zpětného znaku (`) a hranatých závorek v názvech souborů a cestách.

Viz také