Save-Help

Stáhne a uloží nejnovější soubory nápovědy do adresáře systému souborů.

Syntax

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 Windows PowerShell 3.0 fungovala nápověda pro ukládání pouze pro moduly nainstalované v místním počítači. Ačkoli 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 by nefungovala pro nápovědu vzdáleného modulu.

V Windows PowerShell 4.0 je vlastnost HelpInfoUri zachována přes vzdálenou správu PowerShellu, která umožňuje práci s funkcí Save-Help pro moduly, které jsou nainstalovány na vzdálených počítačích. Je také možné uložit objekt PSModuleInfo na disk nebo vyměnitelné médium spuštěním Export-Clixml na počítači, který nemá přístup k internetu, importovat objekt do počítače, který má přístup k internetu, a potom spustit Save-Help 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 usb disk. Nápovědu je možné nainstalovat na vzdálený počítač spuštěním rutiny Update-Help. Tento proces lze použít k instalaci nápovědy na počítače, které nemají žádný druh síťového přístupu.

Pokud chcete nainstalovat uložené soubory nápovědy, spusťte rutinu Update-Help. Přidejte jeho parametr SourcePath k 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 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 pro jednotlivé jazykové verze uživatelského rozhraní. Z souboru CAB nemusíte extrahovat soubory nápovědy. Rutina Update-Help extrahuje soubory nápovědy, ověří kód XML pro zabezpečení a pak 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 do instalační složky 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 v Windows PowerShell 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 uložení nápovědy pro modul DhcpServer z klientského počítače připojeného k internetu bez instalace modulu DhcpServer nebo role serveru DHCP na místním počítači.

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 na 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 v počítači nainstalovaný modul, můžete název modulu zadat jako hodnotu parametru modulu , i když 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í nainstalován v počítači, obsahuje sekvence příkaz Invoke-Command, který získá objekt modulu pro modul CustomSQL z počítače Server02 a potom předá objekt modulu do rutiny Save-Help .

Pokud na počítači není nainstalovaný modul, nástroj Save-Help 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 parametr Force pro přepsání pravidla, které brání rutině Save-Help ve stahování nápovědy více než jednou v každém 24hodinovém období.

Parametr Force také přepíše omezení 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 pomocí rutiny Save-Help stáhne a uloží soubory nápovědy do zadané složky. Parametr Force se vyžaduje, když budete muset každý den spustit příkaz Save-Help více než jednou.

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ého parametrem DestinationPath . Tento parametr je platný pouze v případě, že je v příkazu použit 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 použití ověřování CredSSP k delegování přihlašovacích údajů.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestinationPath

Určuje cestu ke složce, do které se ukládají soubory nápovědy. Nezadávejte název souboru ani příponu názvu souboru.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Force

Označuje, že tato rutina nesleduje jednodenní omezení, 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 omezeno na 1 GB nekomprimovaného obsahu na modul a soubory nápovědy pro modul se nainstalují pouze v případě, že jsou novější než soubory v počítači.

Jednou za den limit chrání servery, které hostují soubory nápovědy, a umožňuje vám přidat do profilu PowerShellu příkaz Uložit-Nápověda .

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

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FullyQualifiedModule

Určuje moduly s názvy, které jsou zadány ve formě ModuleSpecification objektů. Popisuje se v části Poznámky konstruktoru ModuleSpecification (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"}. 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 cestu k cílové složce. Na rozdíl od hodnoty parametru DestinationPath se hodnota parametru 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, aby neinterpretovat žádné znaky jako řídicí sekvence.

Type:String[]
Aliases:PSPath
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Module

Určuje moduly, pro které tato rutina stáhne nápovědu. Zadejte jeden nebo více názvů modulů nebo popisovačů do seznamu odděleného čárkami nebo do souboru, který má na každém řádku jeden název modulu. Jsou povoleny zástupné znaky. Objekty modulu můžete také pipetovat z rutiny Get-Module do funkce Save-Help.

Ve výchozím nastavení nápověda pro ukládání nápovědy ke stažení pro všechny moduly, které podporují aktualizovatelnou nápovědu a jsou nainstalovány v místním počítači v umístění uvedeném v proměnné prostředí PSModulePath .

Pokud chcete uložit nápovědu pro moduly, které nejsou v počítači nainstalované, 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 rutiny Save-Help nepřijímá úplnou cestu k souboru modulu nebo souboru manifestu modulu. Pokud chcete uložit nápovědu pro modul, který není v umístění PSModulePath , naimportujte modul do aktuální relace před spuštěním příkazu Uložit nápovědu .

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.

Type:PSModuleInfo[]
Aliases:Name
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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á objekty jazykové verze, například příkaz Get-Culture nebo Get-UICulture.

Zástupné znaky nejsou povoleny. Nezadávejte částečný kód jazyka, například "de".

Ve výchozím nastavení získá funkce Save-Help soubory nápovědy v jazykové verzi uživatelského rozhraní pro Windows nebo v záložní jazykové verzi. Pokud zadáte parametr UICulture , funkce Save-Help hledá nápovědu pouze pro zadanou jazykovou verzi uživatelského rozhraní, ne v žádné záložní jazykové verzi.

Type:CultureInfo[]
Position:2
Default value:Current UI culture
Required:False
Accept pipeline input:False
Accept wildcard characters: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, vyjednání nebo ověřování založené na protokolu Kerberos.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Vstupy

PSModuleInfo

Objekt modulu můžete převést z rutiny Get-Module na parametr Module v části Save-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 pro moduly 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 pro jednotlivé jazykové verze uživatelského rozhraní. Z souboru CAB nemusíte extrahovat soubory nápovědy. Rutina Update-Help extrahuje soubory nápovědy, ověří 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 funkce 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, bude pokračovat 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
  • Nápověda pro ukládání podporuje všechny moduly a moduly snap-in PowerShell Core. Nepodporuje žádné další moduly snap-in.
  • 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.
  • Rutiny Update-Help a Save-Help nejsou podporovány v prostředí Windows Preinstallation Environment (Windows PE).