Update-Help

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

Syntax

Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [[-SourcePath] <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-Help
      [[-Module] <String[]>]
      [-FullyQualifiedModule <ModuleSpecification[]>]
      [-LiteralPath <String[]>]
      [-Recurse]
      [[-UICulture] <CultureInfo[]>]
      [-Credential <PSCredential>]
      [-UseDefaultCredentials]
      [-Force]
      [-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. K efektivní změně 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 pro modul nebo pokud jsou vaše soubory nápovědy zastaralé, Update-Help stáhne nejnovější soubory nápovědy. Soubory nápovědy je možné stáhnout a nainstalovat z internetu nebo 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. Zahrnuté jsou moduly, které jsou nainstalované, ale nenačtou se v aktuální relaci. Moduly PowerShellu se ukládají do umístění uvedeného v $env:PSModulePath proměnné prostředí. Další informace najdete v about_Updatable_Help.

Pomocí parametru Modulu můžete aktualizovat soubory nápovědy pro konkrétní modul. Pomocí parametru UICulture můžete stahovat soubory nápovědy ve více jazycích a národních prostředích.

Můžete použít Update-Help na počítačích, které nejsou připojené k internetu. Pomocí rutiny Save-Help si můžete stáhnout soubory nápovědy z internetu a uložit je do umístění systému souborů, jako je sdílená složka nebo adresář systému souborů. Potom pomocí parametru Update-HelpSourcePath stáhněte aktualizované soubory nápovědy z umístění systému souborů 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í Update-Help se 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 představena v Windows PowerShell 3.0.

Důležité

Update-Help vyžaduje oprávnění správce.

Abyste mohli aktualizovat soubory nápovědy pro moduly PowerShell Core, musíte být členem skupiny Administrators na počítači.

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

Soubory nápovědy můžete aktualizovat také pomocí položky nabídky Aktualizovat Windows PowerShell nápovědy v nabídce Nápověda v Windows PowerShell integrovaném skriptovacím prostředí (ISE).

Položka Aktualizace Windows PowerShell nápovědy spustí rutinu Update-Help bez parametrů. Pokud chcete aktualizovat nápovědu $PSHOME pro moduly v adresáři, spusťte Windows PowerShell ISE pomocí možnosti Spustit jako správce.

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í 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 pouze 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 japonštiny (ja-JP) a angličtiny (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: Automatické aktualizace souborů nápovědy

Tento příklad vytvoří naplánovanou úlohu, která aktualizuje nápovědu pro všechny moduly každý den v 3:00.

$jobParams = @{
  Name = 'UpdateHelpJob'
  Credential = 'Domain01\User01'
  ScriptBlock = '{Update-Help}'
  Trigger = (New-JobTrigger -Daily -At "3 AM")
}
Register-ScheduledJob @jobParams

Id         Name            JobTriggers     Command                                  Enabled
--         ----            -----------     -------                                  -------
1          UpdateHelpJob   1               Update-Help                              True

Rutina Register-ScheduledJob vytvoří naplánovanou Update-Help úlohu, která spustí příkaz. Příkaz používá parametr Credential ke spuštění Update-Help pomocí přihlašovacích údajů člena skupiny Administrators na počítači. Hodnota parametru Trigger je New-JobTrigger příkaz, který vytvoří aktivační událost úlohy, která spustí úlohu každý den v 3:00.

Pokud chcete příkaz spustit Register-ScheduledJob , spusťte PowerShell pomocí možnosti Spustit jako správce . PowerShell vás vyzve k zadání hesla uživatele zadaného v parametru Credential . Přihlašovací údaje se ukládají s naplánovanou úlohou. Po spuštění úlohy se nezobrazí výzva.

Pomocí Get-ScheduledJob rutiny můžete zobrazit naplánovanou úlohu, pomocí Set-ScheduledJob rutiny ji změnit a pomocí Unregister-ScheduledJob rutiny ji odstranit. Naplánovanou úlohu můžete také zobrazit a spravovat v Plánovači úloh v následující cestě:

Task Scheduler Library\Microsoft\Windows\PowerShell\ScheduledJobs.

Příklad 5: Aktualizace souborů nápovědy na 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ží se 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.

PS> Save-Help -DestinationPath \\Server01\Share\PSHelp -Credential Domain01\Admin01
PS> 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 souboru Servers.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 spustí vzdálený Update-Help příkaz.

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

Rutina Update-Help aktualizuje nápovědu pro zadaný modul. Rutina používá podrobný společný parametr k zobrazení seznamu souborů nápovědy, které byly aktualizovány. Pomocí podrobného zobrazení výstupu můžete zobrazit všechny soubory nápovědy nebo soubory nápovědy pro konkrétní modul.

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

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

Příklad 7: 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í rutiny Update-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 8: Aktualizace souborů nápovědy inventáře

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

Skript identifikuje moduly, které podporují aktualizovatelnou nápovědu pomocí vlastnosti HelpInfoUri modulů. U modulů, které podporují aktualizovatelnou nápovědu, skript vyhledá a parsuje informační soubor nápovědy (*helpinfo.xml) a vyhledá nejnovější číslo verze.

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

# Get-UpdateHelpVersion.ps1
Param(
    [parameter(Mandatory=$False)]
    [String[]]
    $Module
)
$HelpInfoNamespace = @{helpInfo='https://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ých službou SourcePath. Tento parametr je platný pouze v případě, že se v příkazu použije 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 příkaz spustit 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ž byste narazili na chybu odepření přístupu nebo pomocí ověřování CredSSP delegování přihlašovacích údajů.

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

-Force

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

Bez tohoto parametru Update-Help se spustí pouze jednou v každém 24hodinovém období. Stahování je omezené na 1 GB nekomprimovaného obsahu na modul a soubory nápovědy se nainstalují jenom v případě, že 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 usnadňuje přidání Update-Help příkazu do profilu PowerShellu, aniž by se zabíjely náklady na prostředky opakovaných připojení nebo stahování.

Pokud chcete aktualizovat nápovědu pro modul v několika jazykových verzích uživatelského rozhraní bez parametru Force , zahrňte všechny jazykové verze uživatelského rozhraní do stejného příkazu, 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 určeny ve formě moduleSpecification objektů. Tyto moduly jsou popsány v části Poznámky konstruktoru ModuleSpecification (Hashtable).

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

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

nebo

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

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

Parametr FullyQualifiedModule nelze 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 rutinu Save-Help použili ke stažení souborů nápovědy do adresáře.

Objekt adresáře, například z rutin Get-Item , Get-ChildItem můžete kanálovat do Update-Help.

Na rozdíl od hodnoty SourcePath se hodnota LiteralPath používá přesně tak, jak je napsaná. Žá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 nemají interpretovat žádné znaky jako řídicí sekvence.

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

-Module

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

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

Hodnota * (všech) pokusů o aktualizaci nápovědy pro všechny moduly nainstalované v počítači. Zahrnuté 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 Update-HelpModulu rutiny nepřijímá úplnou cestu k souboru modulu nebo souboru manifestu modulu. Pokud chcete aktualizovat nápovědu k modulu, který není v $env:PSModulePath umístění, 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

-SourcePath

Určuje složku systému souborů, kde Update-Help se místo stahování z internetu aktualizují soubory nápovědy. Zadejte cestu ke složce. Nezadávejte název souboru ani příponu názvu souboru. Můžete kanálovat složku, například složku z rutin Get-Item nebo Get-ChildItem rutin, do Update-Help.

Ve výchozím nastavení Update-Help se soubory nápovědy z internetu aktualizují. Použijte SourcePath , když jste rutinu Save-Help použili ke stažení aktualizovaných souborů 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 aktualizaci nápovědy. Toto nastavení Zásady skupiny brání uživatelům v používání Update-Help ke stažení souborů nápovědy z internetu. Další informace najdete v tématu about_Group_Policy_Settings.

Type:String[]
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 získání aktualizovaných 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 příkaz. Zástupné znaky nejsou povolené a nemůžete odeslat částečný kód jazyka, například de.

Ve výchozím nastavení Update-Help získá soubory nápovědy v jazykové verzi uživatelského rozhraní nastavené 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í.

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 příkaz spustí, včetně stahování 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 efektivní pouze v případě, že stahování webu používá NT LAN Manager (NTLM), vyjednávat nebo ověřování založené na protokolu 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 převést na Update-Help.

PSModuleInfo

Objekt modulu můžete převést z rutiny Get-Module na Update-Help.

Výstupy

None

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

Poznámky

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

Nápovědu pro moduly PowerShell Core můžou aktualizovat jenom členové skupiny Administrators v počítači, příkazy nainstalované společně s PowerShellem a 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. Nápovědu pro konkrétní rutinu nemůžete aktualizovat. Pokud chcete najít modul, který obsahuje konkrétní rutinu, použijte vlastnost Get-CommandModuleName rutiny, například (Get-Command Update-Help).ModuleName.

Protože jsou soubory nápovědy nainstalované v adresáři modulu, Update-Help může rutina nainstalovat aktualizovaný soubor nápovědy pouze pro moduly nainstalované v počítači. Rutina Save-Help ale může uložit nápovědu 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 bezobslužně bez zobrazení chybové zprávy. Pokud chcete zobrazit podrobnosti o stavu a průběhu, použijte podrobný parametr.

Rutina Update-Help byla představena v Windows PowerShell 3.0. V dřívějších verzích Windows PowerShell nefunguje. Na počítačích, které mají Windows PowerShell 2.0 i Windows PowerShell 3.0, použijte rutinu Update-Help 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 pro Windows PowerShell 3.0.

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

Update-Help podporuje všechny moduly a moduly snap-in PowerShell Core. Nepodporuje žádné další moduly snap-in.

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

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

Save-Help V prostředí Předinstalace systému Windows (Windows PE) nejsou podporované tyto Update-Help rutiny.