Save-Module

Speichert ein Modul und seine Abhängigkeiten auf dem lokalen Computer, installiert das Modul jedoch nicht.

Syntax

Save-Module
    [-Name] <String[]>
    [-MinimumVersion <String>]
    [-MaximumVersion <String>]
    [-RequiredVersion <String>]
    [-Repository <String[]>]
    [-Path] <String>
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-Credential <PSCredential>]
    [-Force]
    [-AllowPrerelease]
    [-AcceptLicense]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Save-Module
    [-Name] <String[]>
    [-MinimumVersion <String>]
    [-MaximumVersion <String>]
    [-RequiredVersion <String>]
    [-Repository <String[]>]
    -LiteralPath <String>
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-Credential <PSCredential>]
    [-Force]
    [-AllowPrerelease]
    [-AcceptLicense]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Save-Module
    [-InputObject] <PSObject[]>
    -LiteralPath <String>
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-Credential <PSCredential>]
    [-Force]
    [-AcceptLicense]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Save-Module
    [-InputObject] <PSObject[]>
    [-Path] <String>
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-Credential <PSCredential>]
    [-Force]
    [-AcceptLicense]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Beschreibung

Das Save-Module Cmdlet lädt ein Modul und alle Abhängigkeiten aus einem registrierten Repository herunter. Save-Module lädt die aktuellste Version eines Moduls herunter und speichert sie. Die Dateien werden in einem angegebenen Pfad auf dem lokalen Computer gespeichert. Das Modul ist nicht installiert, aber der Inhalt kann von einem Administrator überprüft werden. Das gespeicherte Modul kann dann an den entsprechenden $env:PSModulePath Speicherort des Offlinecomputers kopiert werden.

Get-PSRepository zeigt die registrierten Repositorys des lokalen Computers an. Sie können das Find-Module Cmdlet verwenden, um registrierte Repositorys zu durchsuchen.

Die Parameter, die Modulversionsnummern annehmen, erwarten Zeichenfolgen, die als Versionsnummern formatiert sind.

  • Standardversionsnummern weisen das Format auf x.y.z , wobei x, y und z Zahlen sind.
  • Vorabversionen weisen das Format x.y.z-<prerelease_label> auf, wobei der <prerelease_label> dieser Version eine beliebige Zeichenfolge zugewiesen ist.

Beispiele

Beispiel 1: Speichern eines Moduls

In diesem Beispiel werden ein Modul und seine Abhängigkeiten auf dem lokalen Computer gespeichert.

Save-Module -Name PowerShellGet -Path C:\Test\Modules -Repository PSGallery
Get-ChildItem -Path C:\Test\Modules

Directory: C:\Test\Modules

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         7/1/2019     13:31                PackageManagement
d-----         7/1/2019     13:31                PowerShellGet

Save-Module verwendet den Parameter Name , um das Modul PowerShellGet anzugeben. Der Path-Parameter gibt an, wo das heruntergeladene Modul gespeichert werden soll. Der Parameter Repository gibt das registrierte Repository PSGallery an. Zeigt nach Abschluss des Downloads den Inhalt des Pfads an, Get-ChildItem in dem die Dateien gespeichert werden.

Beispiel 2: Speichern einer bestimmten Version eines Moduls

In diesem Beispiel wird gezeigt, wie Sie einen Parameter wie MaximumVersion oder RequiredVersion verwenden, um eine Modulversion anzugeben.

Save-Module -Name PowerShellGet -Path C:\Test\Modules -Repository PSGallery -MaximumVersion 2.1.0
Get-ChildItem -Path C:\Test\Modules\PowerShellGet\

Directory: C:\Test\Modules\PowerShellGet

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         7/1/2019     13:40                2.1.0

Save-Module verwendet den Parameter Name , um das Modul PowerShellGet anzugeben. Der Path-Parameter gibt an, wo das heruntergeladene Modul gespeichert werden soll. Der Parameter Repository gibt das registrierte Repository PSGallery an. MaximumVersion gibt an, dass Version 2.1.0 heruntergeladen und gespeichert wird. Zeigt nach Abschluss des Downloads den Inhalt des Pfads an, Get-ChildItem in dem die Dateien gespeichert werden.

Beispiel 3: Suchen und Speichern einer bestimmten Version eines Moduls

In diesem Beispiel wird eine erforderliche Modulversion im Repository gefunden und auf dem lokalen Computer gespeichert.

Find-Module -Name PowerShellGet -Repository PSGallery -RequiredVersion 1.6.5 |
  Save-Module -Path C:\Test\Modules
Get-ChildItem -Path C:\Test\Modules\PowerShellGet

Directory: C:\Test\Modules\PowerShellGet

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         7/1/2019     14:04                1.6.5

Find-Module verwendet den Parameter Name , um das Modul PowerShellGet anzugeben. Der Parameter Repository gibt das registrierte Repository PSGallery an. RequiredVersion gibt Version 1.6.5 an.

Das -Objekt wird in der Pipeline an Save-Modulegesendet. Der Path-Parameter gibt an, wo das heruntergeladene Modul gespeichert werden soll. Zeigt nach Abschluss des Downloads den Inhalt des Pfads an, Get-ChildItem in dem die Dateien gespeichert werden.

Parameter

-AcceptLicense

Akzeptieren Sie den Lizenzvertrag automatisch, wenn dies für das Paket erforderlich ist.

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

-AllowPrerelease

Ermöglicht das Speichern eines Moduls, das als Vorabversion gekennzeichnet ist.

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

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie ausführen.Save-Module

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

-Credential

Gibt ein Benutzerkonto an, das über Berechtigungen zum Speichern eines Moduls verfügt.

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

-Force

Wenn der durch den Path-Parameter angegebene Speicherort nicht vorhanden ist, gibt das Cmdlet einen Fehler zurück. Mit dem Force-Parameter wird der Zielpfad erstellt.

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

-InputObject

Akzeptiert ein PSRepositoryItemInfo-Objekt . Geben Sie z. B. an eine Variable aus, Find-Module und verwenden Sie diese Variable als InputObject-Argument .

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

-LiteralPath

Gibt einen Pfad zu einem oder mehreren Speicherorten an. Der Wert des LiteralPath-Parameters wird genau wie eingegeben verwendet. Es werden keine Zeichen als Platzhalter interpretiert. Wenn der Pfad Escapezeichen enthält, schließen Sie sie in einfache Anführungszeichen ein. PowerShell interpretiert keine In einfachen Anführungszeichen eingeschlossenen Zeichen als Escapesequenzen.

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

-MaximumVersion

Gibt die maximale oder neueste Version des zu speichernden Moduls an. Die Parameter MaximumVersion und RequiredVersion können nicht im gleichen Befehl verwendet werden.

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

-MinimumVersion

Gibt die Zu speichernde Mindestversion eines einzelnen Moduls an. Sie können diesen Parameter nicht hinzufügen, wenn Sie versuchen, mehrere Module zu installieren. Die Parameter MinimumVersion und RequiredVersion können nicht im gleichen Befehl verwendet werden.

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

-Name

Gibt ein Array von Namen der zu speichernden Module an.

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

-Path

Gibt den Speicherort auf dem lokalen Computer an, an dem ein gespeichertes Modul gespeichert werden soll. Akzeptiert Wildcardzeichen.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Proxy

Gibt einen Proxyserver für die Anforderung an, anstatt eine direkte Verbindung mit der Internetressource herzustellen.

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

-ProxyCredential

Gibt ein Benutzerkonto an, das über die Berechtigung zur Verwendung des Proxyservers verfügt, der durch den Proxy-Parameter angegeben wird.

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

-Repository

Gibt den Anzeigenamen eines Repositorys an, das durch Ausführen Register-PSRepositoryvon registriert wurde. Verwenden Sie Get-PSRepository , um registrierte Repositorys anzuzeigen.

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

-RequiredVersion

Gibt die genaue Versionsnummer des zu speichernden Moduls an.

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

-WhatIf

Zeigt an, was passieren würde, wenn die Save-Module ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

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

Eingaben

String[]

PSObject[]

String

Uri

PSCredential

Ausgaben

Object

Hinweise

Wichtig

Ab April 2020 unterstützt der PowerShell-Katalog die TLS-Versionen (Transport Layer Security) 1.0 und 1.1 nicht mehr. Wenn Sie nicht TLS 1.2 oder höher verwenden, erhalten Sie beim Versuch des Zugriffs auf den PowerShell-Katalog eine Fehlermeldung. Mit dem folgenden Befehl können Sie sicherstellen, dass Sie TLS 1.2 verwenden:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Weitere Informationen finden Sie im PowerShell-Blog in der Ankündigung.