Delen via


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]
    [-Scope <UpdateHelpScope>]
    [<CommonParameters>]
Save-Help
    -LiteralPath <String[]>
    [[-Module] <PSModuleInfo[]>]
    [-FullyQualifiedModule <ModuleSpecification[]>]
    [[-UICulture] <CultureInfo[]>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-Force]
    [-Scope <UpdateHelpScope>]
    [<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 kunt u de Help-bestanden op meerdere computers gemakkelijker bijwerken. Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.

Vanaf Windows PowerShell 4.0 kunt u Save-Help gebruiken om Help-bestanden te downloaden voor modules die zijn geïnstalleerd op externe computers. Het is ook mogelijk om een PSModuleInfo--object op te slaan met behulp van Export-Clixml op een computer die geen internettoegang heeft, het object op een computer met internettoegang importeert en vervolgens Save-Help uitvoert op het PSModuleInfo--object. Zodra u de opgeslagen help hebt, kunt u deze kopiëren naar de externe computer en installeren door Update-Helpuit te voeren. Dit proces kan worden gebruikt om hulp te installeren op computers die geen enkele vorm van netwerktoegang hebben.

Zonder parameters downloadt een Save-Help opdracht de nieuwste help voor alle modules in de sessie en voor modules die op de computer zijn geïnstalleerd op een locatie die wordt vermeld in de omgevingsvariabele PSModulePath. Met deze actie worden modules overgeslagen die geen ondersteuning bieden voor Updatable Help zonder waarschuwing.

De Save-Help cmdlet 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 inhoud wordt opgeslagen, in plaats van de Help-bestanden te extraheren en te installeren op de computer.

De opgeslagen Help voor elke module bestaat uit één Help-informatiebestand (HelpInfo XML) en een cabinet- of ZIP-archief (.cab of .zip) voor de Help-bestanden in elke taal. In Windows downloadt de opdracht de cabinetbestanden. In Linux en macOS downloadt de opdracht ZIP-bestanden.

Als u de Help-bestanden voor modules in de installatiemap van PowerShell ($PSHOME\Modules) wilt opslaan, 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.

Als u opgeslagen Help-bestanden wilt installeren, voert u Update-Help uit met de parameter SourcePath om de map met de opgeslagen Help-bestanden op te geven. Update-Help extraheert de Help-bestanden uit het archief en installeert ze op de juiste locatie.

Voorbeelden

Voorbeeld 1: De Help voor de DhcpServer-module opslaan

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 module DhcpServer module of de dhcp-serverfunctie op de lokale computer te installeren.

# Option 1:
# 1. Run Invoke-Command to get the PSModuleInfo object for the DhcpServer module,
# 2. Save-Help on the PSModuleInfo object to save the help files to a folder on
#    the local computer.

$mod = Invoke-Command -ComputerName RemoteServer -ScriptBlock {
    Get-Module -Name DhcpServer -ListAvailable
}
Save-Help -Module $mod -DestinationPath C:\SavedHelp


# Option 2:
# 1. Open a PSSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object

$session = New-PSSession -ComputerName "RemoteServer"
$mod = Get-Module -PSSession $session -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath C:\SavedHelp


# Option 3:
# 1. Open a CimSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object
$cimsession = New-CimSession -ComputerName "RemoteServer"
$mod = Get-Module -CimSession $cimsession -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath "C:\SavedHelp"

Voorbeeld 2: Help installeren voor de DhcpServer-module

In dit voorbeeld ziet u hoe u help installeert voor een computer die geen netwerk is verbonden. In dit voorbeeld is de eerste computer niet verbonden met een toegankelijk netwerk. Bestanden moeten naar het bestand worden gekopieerd met verwisselbare media. De tweede computer is verbonden met internet en kan de Help-bestanden downloaden.

# On the first computer, get the PSModuleInfo object for the module and save it to
# removable media.

Get-Module -Name "DhcpServer" -ListAvailable |
    Export-CliXml -Path E:\UsbFlashDrive\DhcpModule.xml

# Move the removable media to a computer that has internet access, and then import the
# PSModuleInfo object. Run Save-Help on the imported PSModuleInfo object and save the help
# files to the removable media.

$moduleInfo = Import-CliXml E:\UsbFlashDrive\DhcpModule.xml
Save-Help -Module $moduleInfo -DestinationPath E:\UsbFlashDrive\SavedHelp

# Finally, move the removable media back to the first computer and install the help.

Update-Help -Module DhcpServer -SourcePath E:\UsbFlashDrive\SavedHelp

Voorbeeld 3: Help opslaan voor alle modules

Met deze opdracht worden de nieuwste Help-bestanden gedownload voor alle modules op de lokale computer. De Help-bestanden worden opgeslagen in de map \\Server01\Fileshare01.

Save-Help -DestinationPath \\Server01\FileShare01

Voorbeeld 4: Help opslaan voor een module op de computer

Met deze opdracht worden de nieuwste Help-bestanden voor de module ServerManager gedownload en opgeslagen in de map \\Server01\Fileshare01.

$saveHelpSplat = @{
    Module = 'ServerManager'
    DestinationPath = '\\Server01\FileShare01'
    Credential = 'Domain01/Admin01'
}
Save-Help @saveHelpSplat

Wanneer een module op de computer is geïnstalleerd, kunt u de naam van de module 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

Met deze opdrachten worden de nieuwste Help-bestanden voor de CustomSQL--module gedownload en opgeslagen in de map \\Server01\Fileshare01.

Invoke-Command -ComputerName Server02 { Get-Module -Name CustomSQL -ListAvailable } |
    Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01

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 Save-Help-cmdlet.

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

Met deze opdracht wordt hulp opgeslagen voor de belangrijkste PowerShell-modules in vier verschillende UI-culturen. De taalpakketten voor deze landinstellingen hoeven niet op de computer te worden geïnstalleerd.

$saveHelpSplat = @{
    Module = 'Microsoft.PowerShell*'
    UICulture = 'de-DE', 'en-US', 'fr-FR', 'ja-JP'
    DestinationPath = "D:\Help"
}
Save-Help @saveHelpSplat

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

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 Save-Help cmdlet help meer dan één keer in elke periode van 24 uur downloadt.

Save-Help -Force -DestinationPath \\Server3\AdminShare\Help

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 gebruikt de Save-Help cmdlet 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 Save-Help opdrachten 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.

Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential--object in dat is gegenereerd door de Get-Credential-cmdlet. Als u een gebruikersnaam typt, wordt u gevraagd het wachtwoord in te voeren.

Referenties worden opgeslagen in een PSCredential-object en het wachtwoord wordt opgeslagen als een SecureString-.

Notitie

Zie voor meer informatie over SecureString gegevensbeveiliging Hoe veilig is SecureString?.

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[]
Aliassen:Path
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Force

Geeft aan dat deze cmdlet niet de beperking één keer per dag volgt, versiecontrole overslaat en bestanden downloadt die de limiet van 1 GB overschrijden.

Zonder deze parameter is slechts één Save-Help opdracht 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 Save-Help opdracht 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

De waarde kan een modulenaam, een volledige modulespecificatie of een pad naar een modulebestand zijn.

Wanneer de waarde een pad is, kan het pad volledig of relatief zijn. Een relatief pad wordt omgezet ten opzichte van het script dat de using-instructie bevat.

Wanneer de waarde een naam of modulespecificatie is, zoekt PowerShell naar de PSModulePath- voor de opgegeven module.

Een modulespecificatie is een hashtabel met de volgende sleutels.

  • ModuleName - Vereist Geeft de modulenaam op.
  • GUID - Optionele Geeft de GUID van de module aan.
  • Het is ook Vereist om ten minste een van de drie onderstaande sleutels op te geven.
    • ModuleVersion - Hiermee geeft u een minimaal acceptabele versie van de module op.
    • MaximumVersion - Hiermee geeft u de maximaal acceptabele versie van de module.
    • RequiredVersion - Hiermee geeft u een exacte, vereiste versie van de module op. Dit kan niet worden gebruikt met de andere versiesleutels.

U kunt de parameter FullyQualifiedModule niet opgeven in dezelfde opdracht als een parameter Module. de twee parameters sluiten elkaar wederzijds uit.

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, LP
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 moduleobjecten ook uit de Get-Module cmdlet naar Save-Help.

Standaard downloadt Save-Help help voor alle modules die ondersteuning bieden voor Updatable Help en zijn geïnstalleerd op de lokale computer 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 Get-Module opdracht uit op een externe computer. Sluis vervolgens de resulterende moduleobjecten door naar de Save-Help cmdlet 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 module van de cmdlet Save-Help accepteert niet het volledige pad van een modulebestand of modulemanifestbestand. Als u hulp wilt opslaan voor een module die zich niet op een PSModulePath locatie bevindt, importeert u de module in de huidige sessie voordat u de opdracht Save-Help uitvoert.

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

-Scope

Deze parameter doet niets in deze cmdlet.

Type:UpdateHelpScope
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-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.

Standaard krijgt Save-Help help-bestanden in de ui-cultuur die is ingesteld voor het besturingssysteem of de terugvalcultuur. Als u de parameter UICulture opgeeft, zoekt Save-Help alleen naar hulp voor de opgegeven taal.

Vanaf PowerShell 7.4 kunt u een gedeeltelijke taalcode gebruiken, zoals en om hulp in het Engels te downloaden voor elke regio.

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

PSModuleInfo

U kunt een moduleobject doorsluisen naar deze cmdlet.

Uitvoerwaarden

None

Deze cmdlet retourneert geen uitvoer.

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.
  • Met de cmdlet Save-Help kunt u hulp opslaan voor modules die niet op de computer zijn geïnstalleerd. Omdat Help-bestanden echter zijn geïnstalleerd in de modulemap, kan de Update-Help cmdlet alleen bijgewerkte Help-bestand installeren voor modules die op de computer zijn geïnstalleerd.
  • Als Save-Help bijgewerkte Help-bestanden voor een module niet kunt vinden of geen bijgewerkte Help-bestanden in de opgegeven taal kunt 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 help 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-kernmodules. 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).