Save-Help
Stáhne a uloží nejnovější soubory nápovědy do adresáře systému souborů.
Syntaxe
Save-Help
[-DestinationPath] <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[<CommonParameters>]
Save-Help
-LiteralPath <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[<CommonParameters>]
Description
Rutina Save-Help stáhne nejnovější soubory nápovědy pro moduly PowerShellu a uloží je do zadaného adresáře. Tato funkce umožňuje aktualizovat soubory nápovědy na počítačích, které nemají přístup k internetu, a usnadňuje aktualizaci souborů nápovědy na více počítačích.
V prostředí Windows PowerShell 3.0 fungovala pouze pro moduly nainstalované v místním počítači. I když bylo možné importovat modul ze vzdáleného počítače nebo získat odkaz na objekt PSModuleInfo ze vzdáleného počítače pomocí vzdálené komunikace PowerShellu, vlastnost HelpInfoUri nebyla zachována a Uložit-Nápověda nebude fungovat pro nápovědu ke vzdálenému modulu.
V prostředí Windows PowerShell 4.0 je vlastnost HelpInfoUri zachována přes vzdálenou vzdálenou komunikace PowerShellu, která umožňuje uložit nápovědu pracovat pro moduly nainstalované na vzdálených počítačích.
Je také možné uložit PSModuleInfo objekt na disk nebo vyměnitelné médium spuštěním Export-Clixml v počítači, který nemá přístup k internetu, importovat objekt do počítače, který má přístup k internetu, a potom spustit Uložit-Nápověda na PSModuleInfo objektu.
Uložená nápověda se dá přenést do vzdáleného počítače pomocí vyměnitelného úložného média, jako je jednotka USB.
Nápovědu lze nainstalovat do vzdáleného počítače spuštěním
Pokud chcete nainstalovat uložené soubory nápovědy, spusťte rutinu Update-Help. Přidejte jeho SourcePath parametr pro určení složky, do které jste uložili soubory nápovědy.
Bez parametrů stáhne příkaz Save-Help nejnovější nápovědu pro všechny moduly v relaci a pro moduly nainstalované v počítači v umístění uvedeném v proměnné prostředí PSModulePath. Tato akce přeskočí moduly, které nepodporují aktualizovatelnou nápovědu bez upozornění.
Rutina Save-Help zkontroluje verzi všech souborů nápovědy v cílové složce. Pokud jsou k dispozici novější soubory nápovědy, tato rutina stáhne nejnovější soubory nápovědy z internetu a uloží je do složky. Rutina Save-Help funguje stejně jako rutina Update-Help s tím rozdílem, že ukládá stažené soubory CAB (.cab) místo extrahování souborů nápovědy ze souborů CAB a jejich instalaci do počítače.
Uložená nápověda pro každý modul se skládá z jednoho souboru nápovědy (HelpInfo XML) a jednoho souboru CAB (.cab) pro soubory nápovědy každé jazykové verze uživatelského rozhraní. Soubory nápovědy nemusíte extrahovat ze souboru CAB. Rutina Update-Help extrahuje soubory nápovědy, ověří zabezpečení XML a potom nainstaluje soubory nápovědy a informační soubor nápovědy do podsložky modulu specifické pro jazyk.
Pokud chcete uložit soubory nápovědy pro moduly v instalační složce PowerShellu ($pshome\Modules), spusťte PowerShell pomocí možnosti Spustit jako správce. Abyste mohli stáhnout soubory nápovědy pro tyto moduly, musíte být členem skupiny Administrators na počítači.
Tato rutina byla zavedena ve Windows PowerShellu 3.0.
Příklady
Příklad 1: Uložení nápovědy pro modul DhcpServer
# Option 1: Run Invoke-Command to get the PSModuleInfo object for the remote DHCP Server module, save the PSModuleInfo object in the variable $m, and then run Save-Help.
$m = Invoke-Command -ComputerName RemoteServer -ScriptBlock { Get-Module -Name DhcpServer -ListAvailable }
Save-Help -Module $m -DestinationPath "C:\SavedHelp"
# Option 2: Open a PSSession--targeted at the remote computer that is running the DhcpServer module--to get the PSModuleInfo object for the remote module, and then run Save-Help.
$s = New-PSSession -ComputerName "RemoteServer"
$m = Get-Module -PSSession $s -Name "DhcpServer" -ListAvailable
Save-Help -Module $m -DestinationPath "C:\SavedHelp"
# Option 3: Open a CIM session--targeted at the remote computer that is running the DhcpServer module--to get the PSModuleInfo object for the remote module, and then run Save-Help.
$c = New-CimSession -ComputerName "RemoteServer"
$m = Get-Module -CimSession $c -Name "DhcpServer" -ListAvailable
Save-Help -Module $m -DestinationPath "C:\SavedHelp"
Tento příklad ukazuje tři různé způsoby použití
Příklad 2: Instalace nápovědy pro modul DhcpServer
# First, run Export-CliXml to export the PSModuleInfo object to a shared folder or to removable media.
$m = Get-Module -Name "DhcpServer" -ListAvailable
Export-CliXml -Path "E:\UsbFlashDrive\DhcpModule.xml" -InputObject $m
# Next, transport the removable media to a computer that has Internet access, and then import the PSModuleInfo object with Import-CliXml. Run Save-Help to save the Help for the imported DhcpServer module PSModuleInfo object.
$deserialized_m = Import-CliXml "E:\UsbFlashDrive\DhcpModule.xml"
Save-Help -Module $deserialized_m -DestinationPath "E:\UsbFlashDrive\SavedHelp"
# Finally, transport the removable media back to the computer that does not have network access, and then install the help by running Update-Help.
Update-Help -Module DhcpServer -SourcePath "E:\UsbFlashDrive\SavedHelp"
Tento příklad ukazuje, jak nainstalovat nápovědu, kterou jste uložili v příkladu 1 pro modul DhcpServer na počítači, který nemá přístup k internetu.
Příklad 3: Uložení nápovědy pro všechny moduly
Save-Help -DestinationPath "\\Server01\FileShare01"
Tento příkaz stáhne nejnovější soubory nápovědy pro všechny moduly v jazykové verzi uživatelského rozhraní nastavené pro Windows na místním počítači. Uloží soubory nápovědy do složky \\Server01\Fileshare01.
Příklad 4: Uložení nápovědy pro modul v počítači
Save-Help -Module ServerManager -DestinationPath "\\Server01\FileShare01" -Credential Domain01/Admin01
Tento příkaz stáhne nejnovější soubory nápovědy pro modul ServerManager a uloží je do složky \\Server01\Fileshare01.
Pokud je na počítači nainstalovaný modul, můžete jako hodnotu parametru Module zadat název modulu, a to i v případě, že modul není importován do aktuální relace.
Příkaz používá parametr credential k zadání přihlašovacích údajů uživatele, který má oprávnění k zápisu do sdílené složky.
Příklad 5: Uložení nápovědy pro modul na jiném počítači
Invoke-Command -ComputerName Server02 {Get-Module -Name CustomSQL -ListAvailable} | Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01
Tyto příkazy stáhnou nejnovější soubory nápovědy pro modul CustomSQL a uloží je do složky \\Server01\Fileshare01.
Vzhledem k tomu, že modul CustomSQL není v počítači nainstalovaný, obsahuje sekvence příkaz Invoke-Command, který získá objekt modulu pro modul CustomSQL z počítače Se server02 a potom předá objekt modulu do rutiny Save-Help.
Pokud v počítači není nainstalovaný modul, uložit-nápověda potřebuje objekt modulu, který obsahuje informace o umístění nejnovějších souborů nápovědy.
Příklad 6: Uložení nápovědy pro modul ve více jazycích
Save-Help -Module Microsoft.PowerShell* -UICulture de-DE, en-US, fr-FR, ja-JP -DestinationPath "D:\Help"
Tento příkaz uloží nápovědu pro moduly PowerShell Core ve čtyřech různých jazykových verzích uživatelského rozhraní. Jazykové sady pro tato národní prostředí nemusí být v počítači nainstalovány.
uložit nápovědu může stáhnout soubory nápovědy pro moduly v různých jazykových verzích uživatelského rozhraní pouze v případě, že vlastník modulu zpřístupní přeložené soubory na internetu.
Příklad 7: Uložení nápovědy více než jednou denně
Save-Help -Force -DestinationPath "\\Server3\AdminShare\Help"
Tento příkaz uloží nápovědu pro všechny moduly nainstalované v počítači. Příkaz určuje, vynutit parametr, který přepíše pravidlo, které brání rutině Save-Help stáhnout nápovědu více než jednou za každé 24hodinové období.
Parametr Force také přepíše omezení o velikosti 1 GB a obchází kontrolu verzí. Proto můžete stáhnout soubory i v případě, že verze není pozdější než verze v cílové složce.
Příkaz používá rutinu Save-Help ke stažení a uložení souborů nápovědy do zadané složky. Parametr Force se vyžaduje, když musíte spustit příkaz Uložit nápovědu více než jednou denně.
Parametry
-Credential
Určuje přihlašovací údaje uživatele. Tato rutina spustí příkaz pomocí přihlašovacích údajů uživatele, který má oprávnění pro přístup k umístění systému souborů určenému parametrem DestinationPath. Tento parametr je platný pouze v případě, že se v příkazu použije parametr DestinationPath nebo LiteralPath.
Tento parametr umožňuje spouštět příkazy Save-Help, které používají parametr DestinationPath 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.
Typ: | PSCredential |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-DestinationPath
Určuje cestu ke složce, do které jsou uloženy soubory nápovědy. Nezadávejte název souboru nebo příponu názvu souboru.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
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 je v každém 24hodinovém období povolen pouze jeden příkaz Save-Help pro každý modul, stahování je omezené na 1 GB nekomprimovaného obsahu na jeden modul a soubory nápovědy pro modul se nainstalují jenom v případě, že jsou novější než 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 uložit nápovědu do profilu PowerShellu.
Pokud chcete uložit 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: Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-FullyQualifiedModule
Určuje moduly s názvy, které jsou zadány ve formě ModuleSpecification objektů. Toto je popsáno v části Poznámky ModuleSpecification Konstruktor (Hashtable) v knihovně MSDN. 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"}. ModuleName a ModuleVersion jsou povinné, ale identifikátor GUID je volitelný.
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 cestu cílové složky. Na rozdíl od hodnoty parametru DestinationPath se hodnota parametru LiteralPath použije přesně tak, jak je zadán. Žá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 |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Module
Určuje moduly, pro které tato rutina stáhne nápovědu. Do seznamu odděleného čárkami nebo do souboru, který má na každém řádku jeden název modulu, zadejte jeden nebo více názvů modulů. Jsou povoleny zástupné znaky. Objekty modulu můžete také převést z rutiny Get-Module do Save-Help .
Ve výchozím nastavení
Pokud chcete uložit nápovědu pro moduly, které nejsou nainstalované v počítači, spusťte na vzdáleném počítači příkaz Get-Module. Potom předejte výsledné objekty modulu do rutiny Save-Help nebo odešlete objekty modulu jako hodnotu parametrů Module nebo InputObject.
Pokud je zadaný modul nainstalovaný v počítači, můžete zadat název modulu nebo objekt modulu. Pokud modul není v počítači nainstalovaný, musíte zadat objekt modulu, například objekt vrácený rutinou Get-Module.
Parametr modulu
Hodnota "*" (všechny) se pokusí aktualizovat nápovědu pro všechny moduly nainstalované v počítači. To zahrnuje 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.
Typ: | PSModuleInfo[] |
Aliasy: | Name |
Position: | 1 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | True |
-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. Nezadávejte částečný kód jazyka, například "de".
Ve výchozím nastavení uložit nápovědu získá soubory nápovědy v sadě jazykové verze uživatelského rozhraní pro Windows nebo její záložní jazykovou verzi. Pokud zadáte parametr UICulture, Uložit nápovědu hledá nápovědu pouze pro zadanou jazykovou verzi uživatelského rozhraní, ne v náhradní jazykové verzi.
Typ: | CultureInfo[] |
Position: | 2 |
Default value: | Current UI culture |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-UseDefaultCredentials
Označuje, že tato rutina spustí příkaz, včetně stahování webu, s přihlašovacími údaji 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á ověřování založené na protokolu NTLM, negotiate nebo Kerberos.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Objekt modulu můžete převést z rutiny Get-Module do parametru ModuleSave-Help.
Výstupy
None
Tato rutina negeneruje žádný výstup.
Poznámky
- Pokud chcete uložit nápovědu pro moduly ve složce $pshome\Modules, spusťte PowerShell pomocí možnosti Spustit jako správce. Nápovědu k modulům ve složce $pshome\Modules můžou stáhnout jenom členové skupiny Administrators v počítači.
- Uložená nápověda pro každý modul se skládá z jednoho souboru nápovědy (HelpInfo XML) a jednoho souboru CAB (.cab) pro soubory nápovědy každé jazykové verze uživatelského rozhraní. Soubory nápovědy nemusíte extrahovat ze souboru CAB. Rutina Update-Help extrahuje soubory nápovědy, ověří KÓD XML a pak nainstaluje soubory nápovědy a informační soubor nápovědy do podsložky modulu specifické pro jazyk.
- Rutina Save-Help může uložit nápovědu pro moduly, které nejsou v počítači nainstalované. Protože jsou však soubory nápovědy nainstalované ve složce modulu, může rutina Update-Help nainstalovat aktualizovaný soubor nápovědy pouze pro moduly nainstalované v počítači.
- Pokud uložit nápovědu nemůže najít aktualizované soubory nápovědy pro modul nebo nemůže najít aktualizované soubory nápovědy v zadaném jazyce, zůstane bezobslužné bez zobrazení chybové zprávy. Pokud chcete zjistit, které soubory příkaz uložil, zadejte parametr Podrobné.
- Moduly jsou nejmenší jednotkou aktualizovatelné nápovědy. Nápovědu pro konkrétní rutinu nelze uložit, pouze pro všechny rutiny v modulu. Pokud chcete najít modul, který obsahuje konkrétní rutinu, použijte vlastnost ModuleName společně s rutinou Get-Command, například
(Get-Command \<cmdlet-name\>).ModuleName
- uložit nápovědu podporuje všechny moduly a moduly snap-in PowerShell Core. Nepodporuje žádné další moduly snap-in.
- Rutiny
Update- Help aSave-Help používají následující porty ke stažení souborů nápovědy: Port 80 pro HTTP a port 443 pro HTTPS. - Rutiny
Update- Help aSave-Help nejsou podporovány v prostředí Windows Preinstallation Environment (Windows PE).