Save-Help
Hiermee worden de nieuwste Help-bestanden gedownload en opgeslagen in een bestandssysteemmap.
Syntaxis
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
De Save-Help cmdlet downloadt de nieuwste Help-bestanden voor PowerShell-modules en slaat deze op in een map die u opgeeft. Met deze functie kunt u de Help-bestanden bijwerken op computers die geen toegang hebben tot internet en maakt het gemakkelijker om de Help-bestanden op meerdere computers bij te werken.
In Windows PowerShell 3.0 werkte Save-Help- alleen werkte voor modules die op de lokale computer zijn geïnstalleerd. Hoewel het mogelijk was om een module van een externe computer te importeren of een verwijzing te verkrijgen naar een PSModuleInfo-object vanaf een externe computer met behulp van externe communicatie van PowerShell, is de eigenschap HelpInfoUri niet behouden en Opslaan-Help- niet werkt voor hulp bij externe modules.
In Windows PowerShell 4.0 blijft de eigenschap HelpInfoUri behouden via externe communicatie van PowerShell, waardoor Save-Help- kan werken voor modules die op externe computers zijn geïnstalleerd. Het is ook mogelijk om een PSModuleInfo--object op schijf of verwisselbare media op te slaan door Export-Clixml uit te voeren op een computer die geen internettoegang heeft, het object te importeren op een computer met internettoegang en vervolgens Save-Help- uit te voeren op het PSModuleInfo--object. De opgeslagen hulp kan worden overgebracht naar de externe computer met behulp van verwisselbare opslagmedia, zoals een USB-station. De Help kan op de externe computer worden geïnstalleerd door Update-Help-uit te voeren. Dit proces kan worden gebruikt om hulp te installeren op computers die geen enkele vorm van netwerktoegang hebben.
Als u opgeslagen Help-bestanden wilt installeren, voert u de cmdlet Update-Help uit. Voeg de parameter SourcePath toe om de map op te geven waarin u de Help-bestanden hebt opgeslagen.
Zonder parameters downloadt een opdracht Save-Help de nieuwste help voor alle modules in de sessie en voor modules die zijn geïnstalleerd op de computer op een locatie die wordt vermeld in de PSModulePath omgevingsvariabele. Met deze actie worden modules overgeslagen die geen ondersteuning bieden voor Updatable Help zonder waarschuwing.
De cmdlet Save-Help controleert de versie van help-bestanden in de doelmap. Als er nieuwere Help-bestanden beschikbaar zijn, downloadt deze cmdlet de nieuwste Help-bestanden van internet en slaat deze vervolgens op in de map. De Save-Help--cmdlet werkt net als de Update-Help-cmdlet, behalve dat de gedownloade cabinetbestanden (.cab) worden opgeslagen in plaats van de Help-bestanden uit de cabinetbestanden te extraheren en op de computer te installeren.
De opgeslagen Help voor elke module bestaat uit één Help-informatiebestand (HelpInfo XML) en één cabinetbestand (.cab) voor de Help-bestanden elke UI-cultuur. U hoeft de Help-bestanden niet uit het cabinetbestand te extraheren. De Cmdlet Update-Help extraheert de Help-bestanden, valideert de XML voor veiligheid en installeert vervolgens de Help-bestanden en het Help-informatiebestand in een taalspecifieke submap van de modulemap.
Als u de Help-bestanden voor modules wilt opslaan in de installatiemap van PowerShell ($pshome\Modules), start u PowerShell met behulp van de optie Als administrator uitvoeren. U moet lid zijn van de groep Administrators op de computer om de Help-bestanden voor deze modules te downloaden.
Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.
Voorbeelden
Voorbeeld 1: De Help voor de DhcpServer-module opslaan
# 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"
In dit voorbeeld ziet u drie verschillende manieren om Save-Help- te gebruiken om de help voor de DhcpServer-module op te slaan vanaf een clientcomputer met internetverbinding, zonder de DhcpServer-module module of de dhcp-serverfunctie op de lokale computer te installeren.
Voorbeeld 2: Help installeren voor de DhcpServer-module
# 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"
In dit voorbeeld ziet u hoe u hulp installeert die u hebt opgeslagen in voorbeeld 1 voor de module DhcpServer op een computer die geen internettoegang heeft.
Voorbeeld 3: Help opslaan voor alle modules
Save-Help -DestinationPath "\\Server01\FileShare01"
Met deze opdracht worden de nieuwste Help-bestanden gedownload voor alle modules in de ui-cultuurset voor Windows op de lokale computer. De Help-bestanden worden opgeslagen in de map \\Server01\Fileshare01.
Voorbeeld 4: Help opslaan voor een module op de computer
Save-Help -Module ServerManager -DestinationPath "\\Server01\FileShare01" -Credential Domain01/Admin01
Met deze opdracht worden de nieuwste Help-bestanden voor de module ServerManager gedownload en opgeslagen in de map \\Server01\Fileshare01.
Wanneer een module op de computer is geïnstalleerd, kunt u de modulenaam typen als de waarde van de parameter Module, zelfs als de module niet in de huidige sessie wordt geïmporteerd.
De opdracht maakt gebruik van de parameter Credential om de referenties op te geven van een gebruiker die gemachtigd is om naar de bestandsshare te schrijven.
Voorbeeld 5: Help opslaan voor een module op een andere computer
Invoke-Command -ComputerName Server02 {Get-Module -Name CustomSQL -ListAvailable} | Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01
Met deze opdrachten worden de nieuwste Help-bestanden voor de CustomSQL--module gedownload en opgeslagen in de map \\Server01\Fileshare01.
Omdat de CustomSQL--module niet op de computer is geïnstalleerd, bevat de reeks een Invoke-Command opdracht waarmee het moduleobject voor de CustomSQL-module van de Server02-computer wordt opgehaald en vervolgens het moduleobject wordt uitgevoerd naar de Cmdlet Save-Help.
Wanneer een module niet op de computer is geïnstalleerd, heeft Save-Help- het moduleobject nodig, dat informatie bevat over de locatie van de nieuwste Help-bestanden.
Voorbeeld 6: Help opslaan voor een module in meerdere talen
Save-Help -Module Microsoft.PowerShell* -UICulture de-DE, en-US, fr-FR, ja-JP -DestinationPath "D:\Help"
Met deze opdracht wordt help voor de PowerShell Core-modules opgeslagen in vier verschillende ui-culturen. De taalpakketten voor deze landinstellingen hoeven niet op de computer te worden geïnstalleerd.
Save-Help- kan help-bestanden voor modules in verschillende UI-culturen alleen downloaden wanneer de eigenaar van de module de vertaalde bestanden beschikbaar maakt op internet.
Voorbeeld 7: Help meer dan één keer per dag opslaan
Save-Help -Force -DestinationPath "\\Server3\AdminShare\Help"
Met deze opdracht wordt help opgeslagen voor alle modules die op de computer zijn geïnstalleerd. Met de opdracht geeft u de parameter Force op om de regel te overschrijven die voorkomt dat de cmdlet Save-Help help meer dan één keer in elke periode van 24 uur downloadt.
De parameter Force overschrijft ook de beperking van 1 GB en omzeilt versiecontrole. Daarom kunt u bestanden downloaden, zelfs als de versie niet later is dan de versie in de doelmap.
De opdracht maakt gebruik van de cmdlet Save-Help om de Help-bestanden te downloaden en op te slaan in de opgegeven map. De parameter Forceren is vereist wanneer u meer dan één keer per dag een Save-Help- opdracht moet uitvoeren.
Parameters
-Credential
Hiermee geeft u een gebruikersreferentie. Met deze cmdlet wordt de opdracht uitgevoerd met behulp van referenties van een gebruiker die gemachtigd is om toegang te krijgen tot de locatie van het bestandssysteem die is opgegeven door de parameter DestinationPath. Deze parameter is alleen geldig wanneer de parameter DestinationPath of LiteralPath wordt gebruikt in de opdracht.
Met deze parameter kunt u Opdrachten opslaan-Help- uitvoeren die gebruikmaken van de parameter DestinationPath op externe computers. Door expliciete referenties op te geven, kunt u de opdracht uitvoeren op een externe computer en toegang krijgen tot een bestandsshare op een derde computer zonder een fout met toegang geweigerd of credSSP-verificatie te gebruiken om referenties te delegeren.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-DestinationPath
Hiermee geeft u het pad van de map waarin de Help-bestanden worden opgeslagen. Geef geen bestandsnaam of bestandsnaamextensie op.
Type: | String[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Force
Hiermee wordt aangegeven dat deze cmdlet niet voldoet aan de beperking van één keer per dag, versiecontrole overslaat en bestanden downloadt die de limiet van 1 GB overschrijden.
Zonder deze parameter is slechts één Opdracht Opslaan-Help voor elke module in elke periode van 24 uur toegestaan, worden downloads beperkt tot 1 GB aan niet-gecomprimeerde inhoud per module en worden help-bestanden voor een module alleen geïnstalleerd wanneer ze nieuwer zijn dan de bestanden op de computer.
De limiet per dag beveiligt de servers die de Help-bestanden hosten en maakt het praktisch voor u om een opdracht Save-Help toe te voegen aan uw PowerShell-profiel.
Als u hulp wilt opslaan voor een module in meerdere UI-culturen zonder de parameter Forceren, moet u alle UI-culturen in dezelfde opdracht opnemen, zoals: Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-FullyQualifiedModule
Hiermee geeft u modules met namen die zijn opgegeven in de vorm van ModuleSpecification-objecten. Dit wordt beschreven in het gedeelte Opmerkingen van ModuleSpecification Constructor (Hashtable) in de MSDN-bibliotheek. De parameter FullyQualifiedModule accepteert bijvoorbeeld een modulenaam die is opgegeven in de indeling @{ModuleName = "modulenaam"; ModuleVersion = "version_number"} of @{ModuleName = "modulenaam"; ModuleVersion = "version_number"; Guid = "GUID"}. ModuleName en ModuleVersion zijn vereist, maar Guid- is optioneel.
U kunt de parameter FullyQualifiedModule niet opgeven in dezelfde opdracht als een parameter Module.
Type: | ModuleSpecification[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-LiteralPath
Hiermee geeft u een pad van de doelmap. In tegenstelling tot de waarde van de parameter DestinationPath, wordt de waarde van de parameter LiteralPath exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escapetekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens geven PowerShell aan dat er geen tekens als escapereeksen moeten worden geïnterpreteerd.
Type: | String[] |
Aliassen: | PSPath |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Module
Hiermee geeft u modules waarvoor deze cmdlet help downloadt. Voer een of meer modulenamen of naampaters in een door komma's gescheiden lijst in of in een bestand met één modulenaam op elke regel. Jokertekens zijn toegestaan. U kunt ook moduleobjecten van de Get-Module cmdlet naar Save-Help-.
Standaard downloadt Save-Help help voor alle modules die Updatable Help ondersteunen en op de lokale computer zijn geïnstalleerd op een locatie die wordt vermeld in de omgevingsvariabele PSModulePath.
Als u hulp wilt opslaan voor modules die niet op de computer zijn geïnstalleerd, voert u een opdracht Get-Module uit op een externe computer. Sluis vervolgens de resulterende moduleobjecten door naar de cmdlet Save-Help of verzend de moduleobjecten als de waarde van de Module of InputObject parameters.
Als de module die u opgeeft op de computer is geïnstalleerd, kunt u de modulenaam of een moduleobject invoeren. Als de module niet op de computer is geïnstalleerd, moet u een moduleobject invoeren, zoals een object dat wordt geretourneerd door de Get-Module cmdlet.
De parameter
Een waarde van '*' (alle) probeert hulp bij te werken voor alle modules die op de computer zijn geïnstalleerd. Dit omvat modules die geen ondersteuning bieden voor Updatable Help. Deze waarde kan fouten genereren wanneer de opdracht modules tegenkomt die geen ondersteuning bieden voor Updatable Help.
Type: | PSModuleInfo[] |
Aliassen: | Name |
Position: | 1 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | True |
-UICulture
Hiermee geeft u de cultuurwaarden van de gebruikersinterface op waarvoor deze cmdlet bijgewerkte Help-bestanden ontvangt. Voer een of meer taalcodes in, zoals es-ES, een variabele die cultuurobjecten bevat of een opdracht waarmee cultuurobjecten worden opgehaald, zoals een opdracht Get-Culture of Get-UICulture.
Jokertekens zijn niet toegestaan. Geef geen gedeeltelijke taalcode op, zoals 'de'.
Standaard krijgt Save-Help- help-bestanden in de gebruikersinterfacecultuurset voor Windows of de terugvalcultuur. Als u de parameter UICulture opgeeft, zoekt Save-Help- alleen naar help voor de opgegeven UI-cultuur, niet in een terugvalcultuur.
Type: | CultureInfo[] |
Position: | 2 |
Default value: | Current UI culture |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-UseDefaultCredentials
Geeft aan dat met deze cmdlet de opdracht wordt uitgevoerd, inclusief het downloaden via internet, met de referenties van de huidige gebruiker. De opdracht wordt standaard uitgevoerd zonder expliciete referenties.
Deze parameter is alleen van kracht wanneer de webdownload gebruikmaakt van verificatie op basis van NTLM, negotiate of Kerberos.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt een moduleobject uit de cmdlet Get-Module doorsluisen naar de parameter Module van Save-Help-.
Uitvoerwaarden
None
Met deze cmdlet wordt geen uitvoer gegenereerd.
Notities
- Als u hulp wilt opslaan voor modules in de map $pshome\Modules, start u PowerShell met behulp van de optie Als administrator uitvoeren. Alleen leden van de groep Administrators op de computer kunnen help downloaden voor modules in de map $pshome\Modules.
- De opgeslagen Help voor elke module bestaat uit één Help-informatiebestand (HelpInfo XML) en één cabinetbestand (.cab) voor de Help-bestanden elke UI-cultuur. U hoeft de Help-bestanden niet uit het cabinetbestand te extraheren. De Update-Help cmdlet extraheert de Help-bestanden, valideert de XML en installeert vervolgens de Help-bestanden en het Help-informatiebestand in een taalspecifieke submap van de modulemap.
- De cmdlet Save-Help kan help opslaan voor modules die niet op de computer zijn geïnstalleerd. Omdat Help-bestanden echter zijn geïnstalleerd in de modulemap, kan de cmdlet Update-Help- alleen bijgewerkte Help-bestanden installeren voor modules die op de computer zijn geïnstalleerd.
- Als Save-Help- geen bijgewerkte Help-bestanden voor een module kan vinden of geen bijgewerkte Help-bestanden in de opgegeven taal kan vinden, wordt deze op de achtergrond voortgezet zonder een foutbericht weer te geven. Als u wilt zien welke bestanden zijn opgeslagen door de opdracht, geeft u de uitgebreide parameter op.
- Modules zijn de kleinste eenheid van updatable help. U kunt geen hulp opslaan voor een bepaalde cmdlet, alleen voor alle cmdlets in de module. Als u de module met een bepaalde cmdlet wilt vinden, gebruikt u de eigenschap ModuleName samen met de Get-Command-cmdlet, bijvoorbeeld
(Get-Command \<cmdlet-name\>).ModuleName
- Save-Help- ondersteunt alle modules en de PowerShell Core-modules. Het biedt geen ondersteuning voor andere modules.
- De cmdlets Update-Help en Save-Help gebruiken de volgende poorten om Help-bestanden te downloaden: Poort 80 voor HTTP en poort 443 voor HTTPS.
- De cmdlets Update-Help en Save-Help worden niet ondersteund in Windows Preinstallation Environment (Windows PE).