Sdílet prostřednictvím


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.

Ve Windows PowerShellu 3.0 Save-Help fungovalo jenom 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 Save-Help nefungovala 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 komunikace PowerShellu, která umožňuje pracovat pro moduly Save-Help nainstalované 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 v počítači, který nemá přístup k internetu, importovat objekt do počítače, který má přístup k internetu, a pak 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 jednotka USB. Nápovědu lze nainstalovat do vzdáleného počítače spuštěním Update-Helppříkazu . Tento proces lze použít k instalaci nápovědy na počítače, které nemají žádný typ síťového přístupu.

Pokud chcete nainstalovat uložené soubory nápovědy, spusťte rutinu Update-Help . Přidejte jeho parametr SourcePath pro určení složky, do které jste uložili soubory nápovědy.

Bez parametrů Save-Help příkaz stáhne 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ěří kód XML z hlediska bezpečnosti 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í Save-Help k 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 \\Server01\Fileshare01 složky.

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 pak je uloží do \\Server01\Fileshare01 složky.

Když je na počítači nainstalovaný modul, můžete jako hodnotu parametru Modulu 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 \\Server01\Fileshare01 složky.

Vzhledem k tomu, že na počítači není nainstalovaný modul CustomSQL , obsahuje sekvence Invoke-Command příkaz, který získá objekt modulu pro modul CustomSQL z počítače Server02 a potom objekt modulu předá rutině Save-Help .

Pokud v počítači není nainstalovaný modul, 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 základní moduly PowerShellu 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.

Save-Help může stáhnout soubory nápovědy pro moduly v různých jazykových verzích uživatelského rozhraní pouze tehdy, když 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 k přepsání pravidla, které brání rutině Save-Help ve stahování nápovědy 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 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 Save-Help příkaz více než jeden den.

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 je v příkazu použit parametr DestinationPath nebo LiteralPath .

Tento parametr umožňuje spouštět Save-Help příkazy, 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.

Zadejte uživatelské jméno, například User01 nebo Domain01\User01, nebo zadejte objekt PSCredential vygenerovaný rutinouGet-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 naleznete v tématu Jak zabezpečený je SecureString?.

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 Save-Help příkaz pro každý modul, stahování je omezené na 1 GB nekomprimovaného obsahu na 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 Save-Help příkaz 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

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 vyhledá zadaný modul v psModulePath .

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

  • ModuleName - Povinný argument Určuje název modulu.
  • GUID - Volitelné určuje identifikátor GUID modulu.
  • Je také povinné zadat aspoň jeden ze tří následujících 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 FullyQualifiedModule nelze zadat ve stejném příkazu jako parametr Module. oba parametry se vzájemně vylučují.

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ží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
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í stáhne nápovědu pro všechny moduly, Save-Help 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 nainstalované v počítači, spusťte Get-Module na vzdáleném počítači příkaz. Potom předejte výsledné objekty modulu do Save-Help rutiny 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 Module rutiny Save-Help nepřijímá úplnou cestu k souboru modulu nebo souboru manifestu modulu. Chcete-li uložit nápovědu pro modul, který není v umístění PSModulePath , importujte modul do aktuální relace před spuštěním Save-Help příkazu.

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-ESpromě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 povoleny. Nezadávejte částečný kód jazyka, například "de".

Ve výchozím nastavení Save-Help získá soubory nápovědy v jazykové verzi uživatelského rozhraní pro Windows nebo její záložní jazykovou verzi. Pokud zadáte parametr UICulture , Save-Help vyhledá 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

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 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 konkrétního jazyka složky modulu.
  • Rutina Save-Help může uložit nápovědu pro moduly, které nejsou v počítači nainstalované. Protože jsou ale soubory nápovědy nainstalované ve složce modulu, Update-Help může rutina nainstalovat aktualizovaný soubor nápovědy jenom pro moduly nainstalované v počítači.
  • Pokud Save-Help nelze najít aktualizované soubory nápovědy pro modul nebo nemůže najít aktualizované soubory nápovědy v zadaném jazyce, bude bezobslužná bez zobrazení chybové zprávy. Pokud chcete zjistit, které soubory uložil příkaz, zadejte podrobný parametr.
  • 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 obsahující konkrétní rutinu , použijte vlastnost ModuleName společně s rutinou Get-Command , například (Get-Command \<cmdlet-name\>).ModuleName
  • Save-Help podporuje všechny moduly a základní moduly modulu snap-in PowerShellu. Nepodporuje žádné další moduly snap-in.
  • Následující Update-Help porty a Save-Help rutiny používají ke stažení souborů nápovědy: Port 80 pro HTTP a port 443 pro HTTPS.
  • Tyto Update-Help rutiny Save-Help nejsou podporovány v prostředí Windows Preinstallation Environment (Windows PE).