Partager via


Save-Module

Enregistre un module et ses dépendances sur l’ordinateur local, mais n’installe pas le module.

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

Description

L’applet Save-Module de commande télécharge un module et toutes les dépendances à partir d’un dépôt inscrit. Save-Module télécharge et enregistre la version la plus récente d’un module. Les fichiers sont enregistrés dans un chemin spécifié sur l’ordinateur local. Le module n’est pas installé, mais son contenu peut être inspecté par un administrateur. Le module enregistré peut ensuite être copié à l’emplacement approprié $env:PSModulePath de la machine hors connexion.

Get-PSRepository affiche les dépôts inscrits de l’ordinateur local. Vous pouvez utiliser l’applet de Find-Module commande pour rechercher des dépôts inscrits.

Les paramètres qui acceptent des numéros de version de module attendent des chaînes mises en forme en tant que numéros de version.

  • Les numéros de version standard ont un format où x.y.z x, y et z sont des nombres
  • Les versions préliminaires ont un format où x.y.z-<prerelease_label> est <prerelease_label> une chaîne arbitraire affectée à cette mise en production.

Exemples

Exemple 1 : Enregistrer un module

Dans cet exemple, un module et ses dépendances sont enregistrés sur l’ordinateur local.

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 utilise le paramètre Name pour spécifier le module PowerShellGet. Le paramètre Path spécifie où stocker le module téléchargé. Le paramètre Repository spécifie un dépôt inscrit, PSGallery. Une fois le téléchargement terminé, Get-ChildItem affiche le contenu du chemin d’accès où les fichiers sont stockés.

Exemple 2 : Enregistrer une version spécifique d’un module

Cet exemple montre comment utiliser un paramètre tel que MaximumVersion ou RequiredVersion pour spécifier une version de module.

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 utilise le paramètre Name pour spécifier le module PowerShellGet. Le paramètre Path spécifie où stocker le module téléchargé. Le paramètre Repository spécifie un dépôt inscrit, PSGallery. MaximumVersion spécifie que la version 2.1.0 est téléchargée et enregistrée. Une fois le téléchargement terminé, Get-ChildItem affiche le contenu du chemin d’accès où les fichiers sont stockés.

Exemple 3 : Rechercher et enregistrer une version spécifique d’un module

Dans cet exemple, une version de module requise est trouvée dans le référentiel et enregistrée sur l’ordinateur local.

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 utilise le paramètre Name pour spécifier le module PowerShellGet. Le paramètre Repository spécifie un dépôt inscrit, PSGallery. RequiredVersion spécifie la version 1.6.5.

L’objet est envoyé vers le bas du pipeline vers Save-Module. Le paramètre Path spécifie où stocker le module téléchargé. Une fois le téléchargement terminé, Get-ChildItem affiche le contenu du chemin d’accès où les fichiers sont stockés.

Paramètres

-AcceptLicense

Acceptez automatiquement le contrat de licence si le package l’exige.

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

-AllowPrerelease

Vous permet d’enregistrer un module marqué en tant que préversion.

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

-Confirm

Vous invite à confirmer avant d’exécuter le Save-Module.

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

-Credential

Spécifie un compte d’utilisateur qui dispose des droits d’enregistrement d’un module.

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

-Force

Si l’emplacement spécifié par le paramètre Path n’existe pas, l’applet de commande retourne une erreur. L’utilisation du paramètre Force crée le chemin d’accès cible.

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

-InputObject

Accepte un objet PSRepositoryItemInfo . Par exemple, effectuez une sortie Find-Module vers une variable et utilisez cette variable comme argument InputObject .

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

-LiteralPath

Spécifie un chemin d’accès à un ou plusieurs emplacements. La valeur du paramètre LiteralPath est utilisée exactement comme entré. Aucun caractère n’est interprété en tant que caractère générique. Si le chemin d’accès comprend des caractères d’échappement, placez-les entre guillemets simples. PowerShell n’interprète pas les caractères placés entre guillemets simples comme des séquences d’échappement.

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

-MaximumVersion

Spécifie la version maximale ou la plus récente du module à enregistrer. Les paramètres MaximumVersion et RequiredVersion ne peuvent pas être utilisés dans la même commande.

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

-MinimumVersion

Spécifie la version minimale d’un seul module à enregistrer. Vous ne pouvez pas ajouter ce paramètre si vous tentez d’installer plusieurs modules. Les paramètres MinimumVersion et RequiredVersion ne peuvent pas être utilisés dans la même commande.

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

-Name

Spécifie un tableau de noms de modules à enregistrer.

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

-Path

Spécifie l’emplacement sur l’ordinateur local pour stocker un module enregistré. Accepte les caractères génériques.

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

-Proxy

Spécifie un serveur proxy pour la demande, plutôt que de se connecter directement à la ressource Internet.

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

-ProxyCredential

Spécifie un compte d'utilisateur qui a l'autorisation d'utiliser le serveur proxy spécifié par le paramètre Proxy.

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

-Repository

Spécifie le nom convivial d’un dépôt qui a été inscrit en exécutant Register-PSRepository. Utilisez Get-PSRepository pour afficher les dépôts inscrits.

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

-RequiredVersion

Spécifie le numéro de version exact du module à enregistrer.

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

-WhatIf

Montre ce qui se passerait si le s’exécute Save-Module . L’applet de commande n’est pas exécutée.

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

Entrées

String[]

PSObject[]

String

Uri

PSCredential

Sorties

Object

Notes

Important

Depuis avril 2020, PowerShell Gallery ne prend plus en charge les versions 1.0 et 1.1 de Transport Layer Security (TLS). Si vous n'utilisez pas TLS 1.2 ou une version plus récente, vous recevez une erreur lorsque vous tentez d'accéder à PowerShell Gallery. Utilisez la commande suivante pour vous assurer que vous utilisez TLS 1.2 :

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

Pour plus d’informations, consultez l’annonce sur le blog PowerShell.