Sdílet prostřednictvím


Update-Help

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

Syntaxe

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í této 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 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 ze sdílené složky.

Bez parametrů Update-Help aktualizuje soubory nápovědy pro moduly, které podporují aktualizovatelnou nápovědu a jsou načteny v relaci nebo nainstalovány v umístění zahrnutém $env:PSModulePathv souboru . Další informace najdete v about_Updatable_Help.

Update-Help zkontroluje verzi nainstalované nápovědy. Pokud Update-Help nemůžete najít aktualizované soubory nápovědy pro modul, bude bezobslužná bez zobrazení chybové zprávy. Pomocí parametru Force přeskočte kontrolu verze. Pomocí podrobného parametru můžete zobrazit podrobnosti o stavu a průběhu. Pomocí parametru Module aktualizujte soubory nápovědy pro konkrétní modul.

Můžete také použít Update-Help na 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á systému, který není připojený k internetu. Potom pomocí parametru Update-Help SourcePath stáhněte aktualizované soubory nápovědy ze sdíleného souboru a nainstalujte je do počítače.

Rutina Update-Help byla zavedena ve Windows PowerShellu 3.0.

Důležité

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

Abyste mohli aktualizovat soubory nápovědy pro základní moduly PowerShellu, 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 . Například: Start-Process pwsh.exe -Verb RunAs.

Příklady

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

Aktualizace Update-Help souborů nápovědy rutiny 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

Aktualizace Update-Help souborů nápovědy rutiny jenom pro názvy modulů, které začínají Microsoft.PowerShellem.

Update-Help -Module Microsoft.PowerShell*

Příklad 3: Aktualizace nápovědy v systému není nastavená na národní prostředí en-US

Tato rutina Update-Help je navržená tak, aby si stáhla nápovědu ve více jazycích. Pokud ale pro jazyk, který váš systém používá, není k dispozici žádná nápověda, zobrazí se chybová zpráva pro modul a jazykovou verzi uživatelského rozhraní.

V tomto příkladu se spouští v systému, Update-Help který je nastavený na en-GB národní prostředí.

Update-Help Microsoft.PowerShell.Utility -Force

Update-Help: Failed to update Help for the module(s) 'Microsoft.PowerShell.Utility' with
UI culture(s) {en-GB} : The specified culture is not supported: en-GB. Specify a culture
from the following list: {en-US}..
English-US help content is available and can be installed using: Update-Help -UICulture en-US.

Soubory nápovědy se vždy publikují pro en-US národní prostředí. Pokud chcete stáhnout nápovědu pro angličtinu, spusťte Update-Help s parametrem UICulture a zadejte en-US národní prostředí.

Příklad 4: 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. Pro přístup ke sdílené složce a instalaci aktualizací jsou potřeba přihlašovací údaje uživatele. 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 do \\Server01\Share\PSHelp sdílené složky. 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 pomocí parametru SourcePath určí sdílenou složku obsahující 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 Podrobné 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 nezobrazí 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 URL, 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: Aktualizace souborů nápovědy inventáře

V tomto příkladu skript Get-UpdateHelpVersion.ps1 vytvoří inventář souborů aktualizovatelné 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 informační soubor nápovědy (*helpinfo.xml) a vyhledá nejnovější číslo verze.

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

# 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í.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky: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ého sourcepathem. 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 přistupovat ke sdílené složce na třetím počítači, aniž by došlo k chybě odepření přístupu nebo k delegování přihlašovacích údajů pomocí ověřování CredSSP.

Zadejte uživatelské jméno, například User01 nebo Domain01\User01, nebo zadejte objekt PSCredential vygenerovaný rutinouGet-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 naleznete v tématu Jak zabezpečený je SecureString?.

Typ:PSCredential
Position:Named
Default value:Current user
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Force

Označuje, že tato rutina neodpovídá 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 za každé 24hodinové období. Soubory ke stažení jsou omezené na 1 GB nekomprimovaného obsahu na jeden modul a soubory nápovědy se nainstalují jenom v novějších verzích než existující soubory v počítači.

Limit jednou za den chrání servery, které hostují soubory nápovědy, a umožňuje vám přidat Update-Help příkaz 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 ve více 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

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-FullyQualifiedModule

Hodnota může být název modulu, úplná specifikace modulu nebo cesta k souboru modulu.

Pokud je hodnota cesta, může být cesta plně kvalifikovaná nebo relativní. Relativní cesta je vyřešena vzhledem ke skriptu, který obsahuje příkaz using.

Pokud je hodnota název nebo specifikace modulu, PowerShell vyhledá zadaný modul v psModulePath .

Specifikace modulu je hashovatelná tabulka s následujícími klíči.

  • ModuleName - Povinný argument Určuje název modulu.
  • GUID - Volitelné určuje identifikátor GUID modulu.
  • Je také povinné zadat aspoň jeden ze tří následujících klíčů.
    • ModuleVersion – Určuje minimální přijatelnou verzi modulu.
    • MaximumVersion – Určuje maximální přijatelnou verzi modulu.
    • RequiredVersion – Určuje přesnou požadovanou verzi modulu. Tuto možnost nelze použít s jinými klíči verze.

Parametr FullyQualifiedModule nelze zadat ve stejném příkazu jako parametr Module.

Typ:ModuleSpecification[]
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky: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 pomocí rutiny Save-Help stáhli soubory nápovědy do adresáře.

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

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

Typ:String[]
Aliasy:PSPath, LP
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Module

Aktualizuje nápovědu pro zadané moduly. Zadejte jeden nebo více názvů modulů nebo vzorů názvů v seznamu odděleném čá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 .

Zadané moduly 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. 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 $env:PSModulePath umístění, naimportujte modul do aktuální relace před spuštěním Update-Help příkazu.

Typ:String[]
Aliasy:Name
Position:0
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky: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 .

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Scope

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

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

Přijatelné hodnoty jsou:

  • CurrentUser
  • AllUsers
Typ:UpdateHelpScope
Position:Named
Default value:CurrentUser
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-SourcePath

Určuje složku systému souborů, ve které 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 vytvořit kanál složky, například z rutin Get-Item nebo Get-ChildItem rutin, do Update-Help.

Ve výchozím nastavení Update-Help se soubory nápovědy stahují z internetu. Použijte SourcePath , když 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ásad skupiny brání uživatelům ve Update-Help stahování souborů nápovědy z internetu. Další informace najdete v tématu about_Group_Policy_Settings.

Typ:String[]
Aliasy:Path
Position:1
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-UICulture

Určuje hodnoty jazykové verze uživatelského rozhraní, pro které tato rutina získá aktualizované soubory nápovědy. Zadejte jeden nebo více kódů jazyka, například es-ESpromě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 povoleny.

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 nebo jeho záložní jazykovou verzi. Pokud zadáte parametr UICulture , Update-Help vyhledá nápovědu pouze pro zadaný jazyk.

Počínaje PowerShellem 7.4 můžete použít částečný kód jazyka, například en stáhnout nápovědu v angličtině pro libovolnou oblast.

Poznámka:

Ubuntu 18.04 změnilo výchozí nastavení národního prostředí na C.UTF.8, což není rozpoznaná jazyková verze uživatelského rozhraní. Update-Help bezobslužné stažení nápovědy, pokud tento parametr nepoužíváte s podporovaným národním prostředím, jako je en-US. K tomu může dojít na libovolné platformě, která používá nepodporovanou hodnotu.

Typ:CultureInfo[]
Position:2
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-UseDefaultCredentials

Označuje, že Update-Help spustí příkaz, 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á protokol NT LAN Manager (NTLM), vyjednávat nebo ověřování založené na protokolu Kerberos.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-WhatIf

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

Typ:SwitchParameter
Aliasy:wi
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

DirectoryInfo

K této rutině můžete připojit objekt cesty k adresáři.

PSModuleInfo

Objekt modulu můžete do této rutiny převést.

Výstupy

None

Tato rutina nevrátí žádný výstup.

Poznámky

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

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

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

Protože soubory nápovědy jsou nainstalovány 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 nainstalované v počítači.

Rutina Update-Help byla zavedena ve Windows PowerShellu 3.0. V dřívějších verzích PowerShellu to nefunguje. Na počítačích s Windows PowerShellem 2.0 i Windows PowerShellem 3.0 použijte rutinu Update-Help v relaci Windows PowerShellu 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.

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

Update-Help podporuje všechny moduly a základní moduly modulu 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 Update-Help příkaz. Spusťte Update-Help bez parametrů nebo pomocí parametru Module zadejte název modulu. Parametr Module v Update-Help Save-Help rutinách 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.

Tyto Update-Help rutiny Save-Help nejsou podporovány v prostředí Windows Preinstallation Environment (Windows PE).