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-Help
SourcePath 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\Modules
vč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-Help
Modulu 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
Cestu k adresáři můžete převést na Update-Help
.
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-Command
ModuleName 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-Help
modulu 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.