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-Help
stá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-Help
Verbose 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-Item
Get-ChildItem
nebo , můžete použít Update-Help
kaná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-US
je . 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
Cestu k adresáři můžete nasměrovat do Update-Help
.
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).ModuleName
napří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-Help
Module 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).