Update-Help

Stáhne a nainstaluje nejnovější soubory nápovědy do vašeho počítače.

Syntax

Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [[-SourcePath] <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-Scope <UpdateHelpScope>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [-LiteralPath <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-Scope <UpdateHelpScope>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

Rutina Update-Help stáhne nejnovější soubory nápovědy pro moduly PowerShellu a nainstaluje je do počítače. Aby se změna projevila, nemusíte restartovat PowerShell. Pomocí rutiny Get-Help můžete okamžitě zobrazit nové soubory nápovědy.

Update-Help zkontroluje verzi souborů nápovědy v počítači. Pokud nemáte soubory nápovědy k modulu nebo pokud jsou soubory nápovědy zastaralé, Update-Help stáhnete nejnovější soubory nápovědy. Soubory nápovědy je možné stáhnout a nainstalovat z internetu nebo ze sdílené složky.

Bez parametrů Update-Help aktualizuje soubory nápovědy pro moduly v relaci a pro všechny nainstalované moduly, které podporují aktualizovatelnou nápovědu. Moduly, které jsou nainstalovány, ale nejsou načteny v aktuální relaci, jsou zahrnuty. Moduly PowerShellu jsou uložené v umístění uvedeném v $env:PSModulePath proměnné prostředí. Další informace najdete v about_Updatable_Help.

K aktualizaci souborů nápovědy pro konkrétní modul můžete použít parametr Module . Pomocí parametru UICulture můžete stáhnout soubory nápovědy ve více jazycích a národních prostředích.

Můžete ho použít Update-Help také v počítačích, které nejsou připojené k internetu. Nejprve pomocí rutiny Save-Helpstáhněte soubory nápovědy z internetu a uložte je do sdílené složky, která je přístupná pro systém, který není připojený k internetu. Potom pomocí parametru SourcePath stáhněte Update-Help aktualizované soubory nápovědy ze sdíleného souboru a nainstalujte je do počítače.

Aktualizace nápovědy můžete automatizovat přidáním rutiny Update-Help do profilu PowerShellu. Ve výchozím nastavení se Update-Help na každém počítači spouští jenom jednou denně. Pokud chcete přepsat limit jednou za den, použijte parametr Force .

Rutina Update-Help byla zavedena v Windows PowerShell 3.0.

Důležité

Update-Help vyžaduje oprávnění správce v PowerShellu 6.0 a novějším. PowerShell 6.1 a vyšší nastavte výchozí obor na CurrentUser. Před PowerShellem 6.1 nebyl k dispozici parametr Scope .

Pokud chcete aktualizovat soubory nápovědy pro základní moduly PowerShellu, musíte být v počítači členem skupiny Administrators.

Pokud chcete stáhnout nebo aktualizovat soubory nápovědy pro moduly v instalačním adresáři PowerShellu ($PSHOME\Modules), včetně modulů PowerShell Core, spusťte PowerShell pomocí možnosti Spustit jako správce . Příklad: Start-Process pwsh.exe -Verb RunAs.

Příklady

Příklad 1: Aktualizace souborů nápovědy pro všechny moduly

Rutina Update-Help aktualizuje soubory nápovědy pro nainstalované moduly, které podporují aktualizovatelnou nápovědu. Jazyk jazykové verze uživatelského rozhraní (UI) je nastavený v operačním systému.

Update-Help

Příklad 2: Aktualizace souborů nápovědy pro zadané moduly

Rutina Update-Help aktualizuje soubory nápovědy jenom pro názvy modulů, které začínají microsoft.PowerShellem.

Update-Help -Module Microsoft.PowerShell*

Příklad 3: Aktualizace souborů nápovědy pro různé jazyky

Rutina Update-Help aktualizuje soubory nápovědy pro japonštinu (ja-JP) a angličtinu (en-US) pro všechny moduly.

Pokud modul neposkytuje soubory nápovědy pro zadanou jazykovou verzi uživatelského rozhraní, zobrazí se chybová zpráva pro modul a jazykovou verzi uživatelského rozhraní. V tomto příkladu chybová zpráva označuje, že soubory nápovědy ja-JP nebyly nalezeny pro modul Microsoft.PowerShell.Utility.

Update-Help -UICulture ja-JP, en-US

Update-Help : Failed to update Help for the module(s) 'Microsoft.PowerShell.Utility' with UI culture(s) {ja-JP}
No UI culture was found that matches the following pattern: ja-JP.

Příklad 4: Aktualizace souborů nápovědy ve více počítačích ze sdílené složky

V tomto příkladu se aktualizované soubory nápovědy stáhnou z internetu a uloží do sdílené složky. Jsou potřeba přihlašovací údaje uživatele, které mají oprávnění pro přístup ke sdílené složce a instalaci aktualizací. Při použití sdílené složky je možné aktualizovat počítače, které jsou za branami firewall nebo nejsou připojené k internetu.

Save-Help -DestinationPath \\Server01\Share\PSHelp -Credential Domain01\Admin01
Invoke-Command -ComputerName (Get-Content Servers.txt) -ScriptBlock {
     Update-Help -SourcePath \\Server01\Share\PSHelp -Credential Domain01\Admin01
}

Příkaz Save-Help stáhne nejnovější soubory nápovědy pro všechny moduly, které podporují aktualizovatelnou nápovědu. Parametr DestinationPath uloží soubory ve \\Server01\Share\PSHelp sdílené složce. Parametr Credential určuje uživatele, který má oprávnění pro přístup ke sdílené složce.

Rutina Invoke-Command spouští vzdálené Update-Help příkazy na více počítačích. Parametr ComputerName získá seznam vzdálených počítačů ze souboruServers.txt . Parametr ScriptBlock spustí Update-Help příkaz a použije parametr SourcePath k určení sdílené složky, která obsahuje aktualizované soubory nápovědy. Parametr Credential určuje uživatele, který má přístup ke sdílené složce a spustit vzdálený Update-Help příkaz.

Příklad 5: Získání seznamu aktualizovaných souborů nápovědy

Rutina Update-Help aktualizuje nápovědu pro zadaný modul. Rutina používá společný parametr Verbose k zobrazení seznamu aktualizovaných souborů nápovědy. Podrobné zobrazení můžete použít k zobrazení výstupu pro všechny soubory nápovědy nebo soubory nápovědy pro konkrétní modul.

Bez parametru Update-HelpVerbose se nezobrazují výsledky příkazu. Výstup podrobného parametru je užitečný k ověření, jestli byly soubory nápovědy aktualizovány nebo jestli je nainstalovaná nejnovější verze.

Update-Help -Module Microsoft.PowerShell.Utility -Verbose

Příklad 6: Vyhledání modulů, které podporují aktualizovatelnou nápovědu

Tento příklad uvádí moduly, které podporují aktualizovatelnou nápovědu. Příkaz používá vlastnost HelpInfoUri modulu k identifikaci modulů, které podporují aktualizovatelnou nápovědu. Vlastnost HelpInfoUri obsahuje adresu, která je přesměrována při spuštění rutinyUpdate-Help.

Get-Module -ListAvailable | Where-Object -Property HelpInfoUri

Directory: C:\program files\powershell\6\Modules

ModuleType Version    Name                                PSEdition ExportedCommands
---------- -------    ----                                --------- ----------------
Manifest   6.1.0.0    CimCmdlets                          Core      {Get-CimAssociatedInstance... }
Manifest   1.2.2.0    Microsoft.PowerShell.Archive        Desk      {Compress-Archive... }
Manifest   6.1.0.0    Microsoft.PowerShell.Diagnostics    Core      {Get-WinEvent, New-WinEvent}

    Directory: C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules

ModuleType Version    Name                                PSEdition ExportedCommands
---------- -------    ----                                --------- ----------------
Manifest   2.0.1.0    Appx                                Core,Desk {Add-AppxPackage, ... }
Script     1.0.0.0    AssignedAccess                      Core,Desk {Clear-AssignedAccess, ... }
Manifest   1.0.0.0    BitLocker                           Core,Desk {Unlock-BitLocker, ... }

Příklad 7: Aktualizované soubory nápovědy inventáře

V tomto příkladu skript Get-UpdateHelpVersion.ps1 vytvoří inventář aktualizovatelných souborů nápovědy pro každý modul a jejich čísla verzí.

Skript identifikuje moduly, které podporují aktualizovatelnou nápovědu pomocí vlastnosti HelpInfoUri modulů. V případě modulů, které podporují aktualizovatelnou nápovědu, skript vyhledá a parsuje soubor s informacemi o nápovědě (*helpinfo.xml), aby zjistil číslo nejnovější verze.

Skript používá PSCustomObject třídy a hash tabulky k vytvoření vlastního výstupního objektu.

# Get-UpdateHelpVersion.ps1
Param(
    [parameter(Mandatory=$False)]
    [String[]]
    $Module
)
$HelpInfoNamespace = @{helpInfo='http://schemas.microsoft.com/powershell/help/2010/05'}

if ($Module) { $Modules = Get-Module $Module -ListAvailable | where {$_.HelpInfoUri} }
else { $Modules = Get-Module -ListAvailable | where {$_.HelpInfoUri} }

foreach ($mModule in $Modules)
{
    $mDir = $mModule.ModuleBase

    if (Test-Path $mdir\*helpinfo.xml)
    {
        $mName=$mModule.Name
        $mNodes = dir $mdir\*helpinfo.xml -ErrorAction SilentlyContinue |
            Select-Xml -Namespace $HelpInfoNamespace -XPath "//helpInfo:UICulture"
        foreach ($mNode in $mNodes)
        {
            $mCulture=$mNode.Node.UICultureName
            $mVer=$mNode.Node.UICultureVersion

            [PSCustomObject]@{"ModuleName"=$mName; "Culture"=$mCulture; "Version"=$mVer}
        }
    }
}

ModuleName                              Culture                                 Version
----------                              -------                                 -------
ActiveDirectory                         en-US                                   3.0.0.0
ADCSAdministration                      en-US                                   3.0.0.0
ADCSDeployment                          en-US                                   3.0.0.0
ADDSDeployment                          en-US                                   3.0.0.0
ADFS                                    en-US                                   3.0.0.0

Parametry

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Určuje přihlašovací údaje uživatele, který má oprávnění pro přístup k umístění systému souborů určenému sourcepath. Tento parametr je platný pouze v případě, že je v příkazu použit parametr SourcePath nebo LiteralPath .

Parametr Credential umožňuje spouštět Update-Help příkazy s parametrem SourcePath na vzdálených počítačích. Zadáním explicitních přihlašovacích údajů můžete spustit příkaz na vzdáleném počítači a získat přístup ke sdílené složce na třetím počítači, aniž by došlo k chybě odepření přístupu, nebo pomocí ověřování CredSSP delegovat přihlašovací údaje.

Zadejte uživatelské jméno, například User01 nebo Domain01\User01, nebo zadejte objekt PSCredential vygenerovaný rutinou Get-Credential . Pokud zadáte uživatelské jméno, zobrazí se výzva k zadání hesla.

Přihlašovací údaje jsou uloženy v objektu PSCredential a heslo je uloženo jako SecureString.

Poznámka

Další informace o ochraně dat SecureString najdete v tématu Jak zabezpečený je SecureString?.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Označuje, že tato rutina nedodržuje omezení jednou za den, přeskočí kontrolu verzí a stáhne soubory, které překračují limit 1 GB.

Bez tohoto parametru se Update-Help spustí pouze jednou v každém 24hodinovém období. Soubory ke stažení jsou omezené na 1 GB nekomprimovaného obsahu na jeden modul a soubory nápovědy se instalují, jenom když jsou novější než stávající soubory v počítači.

Limit jednou za den chrání servery, které hostují soubory nápovědy, a umožňuje, abyste do profilu PowerShellu přidali Update-Help příkaz, aniž byste museli účtovat náklady na prostředky v případě opakovaných připojení nebo stahování.

Pokud chcete aktualizovat nápovědu pro modul ve více jazykových verzích uživatelského rozhraní bez parametru Force , zahrňte do stejného příkazu všechny jazykové verze uživatelského rozhraní, například:

Update-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FullyQualifiedModule

Určuje moduly s názvy, které jsou zadány ve formě ModuleSpecification objekty. Tyto moduly jsou popsány v části Poznámky konstruktoru ModuleSpecification (hashtable).

Například parametr FullyQualifiedModule přijímá název modulu, který je zadaný ve formátu :

@{ModuleName = "modulename"; ModuleVersion = "version_number"}

nebo

@{ModuleName = "modulename"; ModuleVersion = "version_number"; Guid = "GUID"}.

ModuleName a ModuleVersion jsou povinné, ale identifikátor GUID je volitelný.

Parametr FullyQualifiedModule nemůžete zadat ve stejném příkazu jako parametr Modulu .

Type:ModuleSpecification[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-LiteralPath

Určuje složku pro aktualizované soubory nápovědy místo jejich stahování z internetu. Tento parametr nebo SourcePath použijte, pokud jste ke stažení souborů nápovědy do adresáře použili Save-Help rutinu .

Objekt adresáře, například z Get-Item rutin nebo Get-ChildItem , můžete zřetědět do Update-Help.

Na rozdíl od hodnoty SourcePath se hodnota LiteralPath používá přesně tak, jak je zadána. Žádné znaky nejsou interpretovány jako zástupné znaky. Pokud cesta obsahuje řídicí znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, že nemá interpretovat žádné znaky jako řídicí sekvence.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Module

Aktualizace nápovědu pro zadané moduly. Do seznamu odděleného čárkami zadejte jeden nebo více názvů modulů nebo vzorů názvů nebo zadejte soubor, který obsahuje jeden název modulu na každém řádku. Zástupné znaky jsou povoleny. Moduly můžete z rutiny Get-Module do rutiny Update-Help vést.

Moduly, které zadáte, musí být v počítači nainstalované, ale nemusí se importovat do aktuální relace. Můžete zadat libovolný modul v relaci nebo libovolný modul, který je nainstalovaný v umístění uvedeném v $env:PSModulePath proměnné prostředí.

Hodnota * (všechny) pokusy o aktualizaci nápovědy pro všechny moduly, které jsou nainstalovány v počítači. Součástí jsou moduly, které nepodporují aktualizovatelnou nápovědu. Tato hodnota může generovat chyby, když příkaz narazí na moduly, které nepodporují aktualizovatelnou nápovědu. Místo toho spusťte Update-Help bez parametrů.

Parametr Module rutiny Update-Help nepřijímá úplnou cestu k souboru modulu nebo souboru manifestu modulu. Pokud chcete aktualizovat nápovědu pro modul, který není v umístění $env:PSModulePath , naimportujte modul do aktuální relace před spuštěním Update-Help příkazu.

Type:String[]
Aliases:Name
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Recurse

Provede rekurzivní vyhledávání souborů nápovědy v zadaném adresáři. Tento parametr je platný pouze v případě, že příkaz používá parametr SourcePath .

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Scope

Určuje obor systému, ve kterém se aktualizuje nápověda. Aktualizace v oboru AllUsers vyžadují v systémech Windows oprávnění správce. Parametr -Scope byl zaveden v PowerShellu Core verze 6.1.

CurrentUser je výchozí obor souborů nápovědy v PowerShellu 6.1 a novějším. Pro instalaci nebo aktualizaci nápovědy pro všechny uživatele je možné zadat možnost AllUsers. V unixových systémech sudo jsou k aktualizaci nápovědy pro všechny uživatele vyžadována oprávnění. Příklad: sudo pwsh -c Update-Help

Přijatelné hodnoty jsou:

  • Currentuser
  • Všichniuživatelé
Type:UpdateHelpScope
Position:Named
Default value:CurrentUser
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SourcePath

Určuje složku systému souborů, do které Update-Help se získávají aktualizované soubory nápovědy místo jejich stahování z internetu. Zadejte cestu ke složce. Nezadávejte název souboru ani příponu názvu souboru. Ke složce, jako je například rutina Get-ItemGet-ChildItem nebo , můžete použít Update-Helpkanál .

Ve výchozím nastavení Update-Help stahuje aktualizované soubory nápovědy z internetu. SourcePath použijte, pokud jste pomocí rutiny Save-Help stáhli aktualizované soubory nápovědy do adresáře.

Pokud chcete zadat výchozí hodnotu pro SourcePath, přejděte na Zásady skupiny, Konfigurace počítače a Nastavte výchozí zdrojovou cestu pro Update-Help. Toto nastavení Zásady skupiny brání uživatelům ve stahování souborů nápovědy z internetu pomocí příkazu Update-Help . Další informace najdete v tématu about_Group_Policy_Settings.

Type:String[]
Aliases:Path
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UICulture

Určuje hodnoty jazykové verze uživatelského rozhraní, které Update-Help se používají k aktualizaci souborů nápovědy. Zadejte jeden nebo více kódů jazyka, například es-ES, proměnnou obsahující objekty jazykové verze nebo příkaz, který získá objekty jazykové verze, například Get-Culture příkaz nebo Get-UICulture . Zástupné znaky nejsou povoleny a nemůžete odeslat kód částečného jazyka, například de.

Ve výchozím nastavení Update-Help získá soubory nápovědy v jazykové verzi uživatelského rozhraní pro operační systém. Pokud zadáte parametr UICulture , Update-Help vyhledá nápovědu pouze pro zadanou jazykovou verzi uživatelského rozhraní.

Poznámka

Ubuntu 18.04 změnil výchozí nastavení národního prostředí na C.UTF.8, což není rozpoznaná jazyková verze uživatelského rozhraní. Update-Help pokud nepoužijete tento parametr s podporovaným národním prostředím, jako en-USje . K tomu může dojít na jakékoli platformě, která používá nepodporovanou hodnotu.

Příkazy, které používají parametr UICulture , jsou úspěšné pouze v případě, že modul poskytuje soubory nápovědy pro zadanou jazykovou verzi uživatelského rozhraní. Pokud příkaz selže, protože zadaná jazyková verze uživatelského rozhraní není podporovaná, zobrazí se chybová zpráva.

Type:CultureInfo[]
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseDefaultCredentials

Označuje, že Update-Help se příkaz spustí, včetně stažení z internetu, pomocí přihlašovacích údajů aktuálního uživatele. Ve výchozím nastavení se příkaz spustí bez explicitních přihlašovacích údajů.

Tento parametr je účinný pouze v případě, že stahování z webu používá ověřování nt LAN Manager (NTLM), negotiate nebo kerberos.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina se nespustí.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Vstupy

DirectoryInfo

Cestu k adresáři můžete nasměrovat do Update-Help.

PSModuleInfo

Objekt modulu můžete z rutiny Get-Module nasměrovat do Update-Help.

Výstupy

None

Update-Help negeneruje žádný výstup.

Poznámky

Pokud chcete aktualizovat nápovědu pro základní moduly PowerShellu, které obsahují příkazy nainstalované s PowerShellem nebo libovolný modul v $PSHOME\Modules adresáři, spusťte PowerShell s možností Spustit jako správce.

Jenom členové skupiny Administrators na počítači můžou aktualizovat nápovědu pro základní moduly PowerShellu, příkazy nainstalované společně s PowerShellem a pro moduly ve $PSHOME\Modules složce. Pokud nemáte oprávnění k aktualizaci souborů nápovědy, můžete si soubory nápovědy přečíst online. Například, Get-Help Update-Help -Online.

Moduly jsou nejmenší jednotkou aktualizovatelné nápovědy. Nemůžete aktualizovat nápovědu pro konkrétní rutinu. Pokud chcete najít modul, který obsahuje konkrétní rutinu, použijte vlastnost ModuleName rutiny Get-Command , (Get-Command Update-Help).ModuleNamenapříklad .

Protože jsou soubory nápovědy nainstalované v adresáři modulů, může rutina Update-Help nainstalovat aktualizovaný soubor nápovědy jenom pro moduly nainstalované v počítači. Rutina ale může uložit nápovědu Save-Help pro moduly, které nejsou v počítači nainstalované.

Pokud Update-Help nemůžete najít aktualizované soubory nápovědy pro modul nebo nemůžete najít aktualizovanou nápovědu v zadaném jazyce, pokračuje bez zobrazení chybové zprávy. Pokud chcete zobrazit podrobnosti o stavu a průběhu, použijte parametr Verbose .

Rutina Update-Help byla zavedena v Windows PowerShell 3.0. V dřívějších verzích PowerShellu nefunguje. Na počítačích, které mají Windows PowerShell 2.0 i Windows PowerShell 3.0, použijte Update-Help rutinu v relaci Windows PowerShell 3.0 ke stažení a aktualizaci souborů nápovědy. Soubory nápovědy jsou k dispozici pro Windows PowerShell 2.0 i Windows PowerShell 3.0.

Rutiny Update-Help a Save-Help používají ke stažení souborů nápovědy následující porty: Port 80 pro HTTP a port 443 pro HTTPS.

Update-Help podporuje všechny moduly a základní moduly snap-in PowerShellu. Nepodporuje žádné další moduly snap-in.

Pokud chcete aktualizovat nápovědu pro modul v umístění, které není uvedené v $env:PSModulePath proměnné prostředí, naimportujte modul do aktuální relace a spusťte příkaz Update-Help . Spusťte Update-Help příkaz bez parametrů nebo zadejte název modulu pomocí parametru Module . Parametr Update-HelpModule rutin a Save-Help nepřijímá úplnou cestu k souboru modulu nebo souboru manifestu modulu.

Aktualizovatelnou nápovědu může podporovat libovolný modul. Pokyny pro podporu aktualizovatelné nápovědy v modulech, které vytvoříte, najdete v tématu Podpora aktualizovatelné nápovědy.

Rutiny Update-Help a Save-Help nejsou podporovány v předinstalačním prostředí Systému Windows (Windows PE).