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. K okamžitému zobrazení nových souborů nápovědy můžete použít rutinu Get-Help.

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

Bez parametrů Update-Help aktualizovat 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 v $env:PSModulePath. Další informace najdete v tématu about_Updatable_Help.

Update-Help zkontroluje nainstalovanou verzi nápovědy. Pokud Update-Help nemůže 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í parametru Podrobné zobrazíte 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 SourcePathUpdate-Help 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 novější nastavil 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\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í je nastavený v operačním systému.

Update-Help

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

Aktualizace Update-Help rutiny aktualizují soubory nápovědy pouze pro názvy modulů, které začínají Microsoft.PowerShell.

Update-Help -Module Microsoft.PowerShell*

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

Rutina Update-Help je určená ke stažení nápovědy 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 Update-Help spouští v systému, 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 národní prostředí en-US. 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 sdílené složky \\Server01\Share\PSHelp. Parametr přihlašovacích údajů určuje uživatele, který má oprávnění pro přístup ke sdílené složce.

Rutina Invoke-Command spouští příkazy vzdáleného Update-Help na více počítačích. Parametr ComputerName získá seznam vzdálených počítačů ze souboru Servers.txt. Parametr ScriptBlock spustí příkaz Update-Help a pomocí parametru SourcePath určí sdílenou složku obsahující aktualizované soubory nápovědy. Parametr přihlašovacích údajů určuje uživatele, který má přístup ke sdílené složce, a spustí vzdálený příkaz Update-Help.

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

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

Bez parametru PodrobnéUpdate-Help nezobrazí výsledky příkazu. Výstup parametru Podrobné 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ři spuštění rutiny Update-Help přesměrována.

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í HelpInfoUri vlastnost modulů. Pro moduly, které podporují aktualizovatelnou nápovědu, skript vyhledá a parsuje informační soubor nápovědy (*helpinfo.xml) a vyhledá číslo nejnovější verze.

Skript používá PSCustomObject třídu a tabulku hash 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 vás vyzve 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 pověření uživatele, který má oprávnění pro přístup k umístění systému souborů určené SourcePath. Tento parametr je platný pouze v případě, že se v příkazu použije parametr SourcePath nebo LiteralPath.

Parametr přihlašovacích údajů umožňuje spouštět příkazy Update-Help pomocí parametru 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ý 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?.

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 do profilu PowerShellu Update-Help příkaz, aniž by se vám 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 prohledá PSModulePath zadaného modulu.

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

  • ModuleName - Povinný Určuje název modulu.
  • GUID - Volitelné Určuje identifikátor GUID modulu.
  • Je také Povinné zadat aspoň jeden z následujících tří 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 FullyQualifiedMod ule nemůžete 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 ke stažení souborů nápovědy do adresáře použili rutinu Save-Help.

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

Na rozdíl od hodnoty SourcePathse hodnota LiterálPath 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, 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 proměnné prostředí $env:PSModulePath.

Hodnota * (všechny) pokusy 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í, importujte modul do aktuální relace před spuštěním příkazu Update-Help.

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ím oborem souborů nápovědy v PowerShellu 6.1 a novějším. allusers lze zadat pro instalaci nebo aktualizaci nápovědy pro všechny uživatele. V systémech Unix sudo oprávnění jsou 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ů, kde Update-Help získá 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. Do Update-Helpmůžete vytvořit kanál složky, například složku z Get-Item nebo rutin Get-ChildItem .

Ve výchozím nastavení Update-Help stáhne aktualizované soubory nápovědy z internetu. Pokud jste k stažení aktualizovaných souborů nápovědy do adresáře použili rutinu Save-Help, použijte SourcePath.

Chcete-li zadat výchozí hodnotu SourcePath , přejděte na zásady skupiny, Konfigurace počítačea Nastavit výchozí zdrojovou cestu proUpdate-Help . Toto nastavení zásad skupiny brání uživatelům v používání Update-Help ke stahování souborů nápovědy z internetu. Další informace naleznete 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-ES, proměnnou obsahující objekty jazykové verze nebo příkaz, který získává objekty jazykové verze, například Get-Culture nebo Get-UICulture příkaz. Zástupné znaky nejsou povoleny.

Ve výchozím nastavení Update-Help získá soubory nápovědy v sadě jazykové verze uživatelského rozhraní pro operační systém nebo jeho záložní jazykovou verzi. Pokud zadáte parametr UICulture, Update-Help hledá nápovědu jenom pro zadaný jazyk.

Počínaje PowerShellem 7.4 můžete použít částečný kód jazyka, například en ke stažení nápovědy 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 nepovedlo se stáhnout nápovědu, 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

Ukazuje, co se stane, když se rutina spustí. 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 nebo libovolného modulu v adresáři $PSHOME\Modules, 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 $PSHOME\Modules můžou aktualizovat jenom členové skupiny Administrators v 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, například (Get-Command Update-Help).ModuleName.

Protože soubory nápovědy jsou nainstalovány v adresáři modulu, může rutina Update-Help 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.

Rutiny Update-Help a Save-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 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 proměnné prostředí $env:PSModulePath, naimportujte modul do aktuální relace a spusťte příkaz Update-Help. Spusťte Update-Help bez parametrů nebo pomocí parametru modulu zadejte název modulu. Parametr moduluUpdate-Help a rutiny Save-Help 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.

Rutiny Update-Help a Save-Help nejsou podporované v prostředí Windows Preinstallation Environment (Windows PE).