Install-Module

Télécharge un ou plusieurs modules à partir d’un référentiel et les installe sur l’ordinateur local.

Syntax

Install-Module
       [-Name] <String[]>
       [-MinimumVersion <String>]
       [-MaximumVersion <String>]
       [-RequiredVersion <String>]
       [-Repository <String[]>]
       [-Credential <PSCredential>]
       [-Scope <String>]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-AllowClobber]
       [-SkipPublisherCheck]
       [-Force]
       [-AllowPrerelease]
       [-AcceptLicense]
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Install-Module
       [-InputObject] <PSObject[]>
       [-Credential <PSCredential>]
       [-Scope <String>]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-AllowClobber]
       [-SkipPublisherCheck]
       [-Force]
       [-AcceptLicense]
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

L’applet Install-Module de commande obtient un ou plusieurs modules qui répondent aux critères spécifiés à partir d’un référentiel en ligne. L’applet de commande vérifie que les résultats de recherche sont des modules valides et copient les dossiers de module à l’emplacement d’installation. Les modules installés ne sont pas automatiquement importés après l’installation. Vous pouvez filtrer le module installé en fonction des versions minimales, maximales et exactes des modules spécifiés.

Si le module installé a le même nom ou version, ou contient des commandes dans un module existant, les messages d’avertissement s’affichent. Après avoir confirmé que vous souhaitez installer le module et remplacer les avertissements, utilisez les paramètres et -AllowClobber les -Force paramètres. En fonction des paramètres de votre référentiel, vous devrez peut-être répondre à une invite pour que l’installation du module continue.

Ces exemples utilisent le PowerShell Gallery comme seul référentiel inscrit. Get-PSRepository affiche les référentiels inscrits. Si vous avez plusieurs référentiels inscrits, utilisez le -Repository paramètre pour spécifier le nom du référentiel.

Exemples

Exemple 1 : Rechercher et installer un module

Cet exemple recherche un module dans le référentiel et installe le module.

Find-Module -Name PowerShellGet | Install-Module

Le Find-Module paramètre Name permet de spécifier le module PowerShellGet . Par défaut, la version la plus récente du module est téléchargée à partir du référentiel. L’objet est envoyé vers le bas du pipeline à l’applet Install-Module de commande. Install-Module installe le module pour tous les utilisateurs dans $env:ProgramFiles\PowerShell\Modules.

Exemple 2 : Installer un module par nom

Dans cet exemple, la version la plus récente du module PowerShellGet est installée.

Install-Module -Name PowerShellGet

Le Install-Module paramètre Name permet de spécifier le module PowerShellGet . Par défaut, la version la plus récente du module est téléchargée à partir du référentiel et installée.

Exemple 3 : Installer un module à l’aide de sa version minimale

Dans cet exemple, la version minimale du module PowerShellGet est installée. Le paramètre MinimumVersion spécifie la version la plus basse du module qui doit être installée. Si une version plus récente du module est disponible, cette version est téléchargée et installée pour tous les utilisateurs.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

Le Install-Module paramètre Name permet de spécifier le module PowerShellGet . Le paramètre MinimumVersion spécifie que la version 2.0.1 est téléchargée à partir du référentiel et installée. Étant donné que la version 2.0.4 est disponible, cette version est téléchargée et installée pour tous les utilisateurs.

Exemple 4 : Installer une version spécifique d’un module

Dans cet exemple, une version spécifique du module PowerShellGet est installée.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

Le Install-Module paramètre Name permet de spécifier le module PowerShellGet . Le paramètre RequiredVersion spécifie que la version 2.0.0 est téléchargée et installée pour tous les utilisateurs.

Exemple 5 : Installer un module uniquement pour l’utilisateur actuel

Cet exemple télécharge et installe la version la plus récente d’un module, uniquement pour l’utilisateur actuel.

Install-Module -Name PowerShellGet -Scope CurrentUser

Le Install-Module paramètre Name permet de spécifier le module PowerShellGet . Install-Moduletélécharge et installe la version la plus récente de PowerShellGet dans le répertoire de l’utilisateur actuel. $home\Documents\PowerShell\Modules

Paramètres

-AcceptLicense

Pour les modules qui nécessitent une licence, AcceptLicense accepte automatiquement le contrat de licence pendant l’installation. Pour plus d’informations, consultez Modules nécessitant l’acceptation de licence.

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

Remplace les messages d’avertissement concernant les conflits d’installation sur les commandes existantes sur un ordinateur. Remplace les commandes existantes qui ont le même nom que les commandes installées par un module. AllowClobber et Force peuvent être utilisés ensemble dans une Install-Module commande.

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

Vous permet d’installer un module marqué comme préversion.

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

Vous invite à confirmer avant d’exécuter l’applet de Install-Module commande.

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

Spécifie un compte d’utilisateur disposant de droits d’installation d’un module pour un fournisseur de package ou une source spécifié.

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

Installe un module et remplace les messages d’avertissement concernant les conflits d’installation de module. Si un module portant le même nom existe déjà sur l’ordinateur, Force autorise l’installation de plusieurs versions. S’il existe un module existant portant le même nom et la même version, force le remplacement de cette version. Force et AllowClobber peuvent être utilisés ensemble dans une Install-Module commande.

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

Utilisé pour l’entrée de pipeline. Une erreur est levée si une valeur fournie directement à InputObject. Utilisez le pipeline pour transmettre des objets avec le paramètre InputObject .

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

Spécifie la version maximale d’un seul module à installer. La version installée doit être inférieure ou égale à MaximumVersion. Si vous souhaitez installer plusieurs modules, vous ne pouvez pas utiliser MaximumVersion. MaximumVersion et RequiredVersion ne peuvent pas être utilisés dans la même Install-Module commande.

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

Spécifie la version minimale d’un seul module à installer. La version installée doit être supérieure ou égale à MinimumVersion. S’il existe une version plus récente du module disponible, la version la plus récente est installée. Si vous souhaitez installer plusieurs modules, vous ne pouvez pas utiliser MinimumVersion. MinimumVersion et RequiredVersion ne peuvent pas être utilisés dans la même Install-Module commande.

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

Spécifie les noms exacts des modules à installer à partir de la galerie en ligne. Une liste séparée par des virgules des noms de modules est acceptée. Le nom du module doit correspondre au nom du module dans le référentiel. Permet Find-Module d’obtenir la liste des noms de modules.

Type:String[]
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:False
-PassThru
Type:SwitchParameter
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-Proxy

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

Type:Uri
Position:Named
Default value:None
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
Accept pipeline input:True
Accept wildcard characters:False
-Repository

Utilisez le paramètre Référentiel pour spécifier le référentiel utilisé pour télécharger et installer un module. Utilisé lorsque plusieurs référentiels sont inscrits. Spécifie le nom d’un référentiel inscrit dans la Install-Module commande. Pour inscrire un référentiel, utilisez Register-PSRepository. Pour afficher les référentiels inscrits, utilisez Get-PSRepository.

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

Spécifie la version exacte d’un seul module à installer. S’il n’existe aucune correspondance dans le référentiel pour la version spécifiée, une erreur s’affiche. Si vous souhaitez installer plusieurs modules, vous ne pouvez pas utiliser RequiredVersion. RequiredVersion ne peut pas être utilisé dans la même Install-Module commande que MinimumVersion ou MaximumVersion.

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

Spécifie l’étendue d’installation du module. Les valeurs acceptables pour ce paramètre sont AllUsers et CurrentUser.

L’étendue AllUsers installe des modules dans un emplacement accessible à tous les utilisateurs de l’ordinateur :

$env:ProgramFiles\PowerShell\Modules

CurrentUser installe des modules dans un emplacement accessible uniquement à l’utilisateur actuel de l’ordinateur. Par exemple :

$home\Documents\PowerShell\Modules

Quand aucune étendue n’est définie, la valeur par défaut est définie en fonction de la version de PowerShellGet.

  • Dans PowerShellGet versions 2.0.0 et ultérieures, la valeur par défaut est CurrentUser, qui ne nécessite pas d’élévation pour l’installation.
  • Dans les versions de PowerShellGet 1.x, la valeur par défaut est AllUsers, ce qui nécessite une élévation pour l’installation.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-SkipPublisherCheck

Vous permet d’installer une version plus récente d’un module qui existe déjà sur votre ordinateur. Par exemple, lorsqu’un module existant est signé numériquement par un éditeur approuvé, mais que la nouvelle version n’est pas signée numériquement par un éditeur approuvé.

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

Montre ce qui se passerait si une Install-Module commande a été exécutée. L’applet de commande n’est pas exécutée.

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

Entrées

PSRepositoryItemInfo

Find-Module crée des objets PSRepositoryItemInfo qui peuvent être envoyés vers le bas du pipeline vers Install-Module.

String[]

PSObject[]

String

PSCredential

Uri

Sorties

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

Lorsque vous utilisez le paramètre PassThru , Install-Module génère un objet PSRepositoryItemInfo pour le module. Il s’agit des mêmes informations que celles que vous obtenez à partir de l’applet Find-Module de commande.

Notes

Install-Module s’exécute sur PowerShell 5.0 ou versions ultérieures, sur Windows 7 ou Windows 2008 R2 et versions ultérieures de Windows.

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.

En tant que meilleure pratique de sécurité, évaluez le code d’un module avant d’exécuter des applets de commande ou des fonctions pour la première fois. Pour empêcher l’exécution de modules qui contiennent du code malveillant, les modules installés ne sont pas automatiquement importés après l’installation.

Si le nom du module spécifié par le paramètre Name n’existe pas dans le référentiel, Install-Module retourne une erreur.

Pour installer plusieurs modules, utilisez le paramètre Name et spécifiez un tableau séparé par des virgules de noms de modules. Si vous spécifiez plusieurs noms de module, vous ne pouvez pas utiliser MinimumVersion, MaximumVersion ou RequiredVersion. Find-Module crée des objets PSRepositoryItemInfo qui peuvent être envoyés vers le bas du pipeline vers Install-Module. Le pipeline est un autre moyen de spécifier plusieurs modules à installer dans une seule commande.

Par défaut, les modules de l’étendue de AllUsers sont installés dans $env:ProgramFiles\PowerShell\Modules. La valeur par défaut empêche toute confusion lorsque vous installez des ressources PowerShell Desired State Configuration (DSC).

Une installation de module échoue et ne peut pas être importée si elle n’a pas de .psm1nom .psd1, ou .dll du même nom dans le dossier. Utilisez le paramètre Force pour installer le module.

Si la version d’un module existant correspond au nom spécifié par le paramètre Name , et que le paramètre MinimumVersion ou RequiredVersion n’est pas utilisé, continue en mode silencieux, Install-Module mais n’installe pas le module.

Si la version d’un module existant est supérieure à la valeur du paramètre MinimumVersion ou égale à la valeur du paramètre RequiredVersion , continue en mode silencieux, Install-Module mais n’installe pas le module.

Si le module existant ne correspond pas aux valeurs spécifiées par les paramètres MinimumVersion ou RequiredVersion , une erreur se produit dans la Install-Module commande. Par exemple, si la version du module installé existant est inférieure à la valeur MinimumVersion ou non égale à la valeur RequiredVersion .

Une installation de module installe également tous les modules dépendants spécifiés comme requis par l’éditeur de module. L’éditeur spécifie les modules requis et leurs versions dans le manifeste du module.