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 dépôt en ligne. L’applet de commande vérifie que les résultats de la recherche sont des modules valides et copie les dossiers de module dans l’emplacement d’installation. Les modules installés ne sont pas importés automatiquement 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 en cours d’installation a le même nom ou la même version, ou contient des commandes dans un module existant, des messages d’avertissement s’affichent. Après avoir confirmé que vous souhaitez installer le module et remplacer les avertissements, utilisez les -Force
paramètres et -AllowClobber
. En fonction des paramètres de votre dépôt, vous devrez peut-être répondre à une invite pour que l’installation du module se poursuive.
Ces exemples utilisent le PowerShell Gallery comme seul dépôt inscrit. Get-PSRepository
affiche les dépôts inscrits. Si vous avez plusieurs référentiels inscrits, utilisez le -Repository
paramètre pour spécifier le nom du dépôt.
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
Utilise Find-Module
le paramètre Name pour spécifier le module PowerShellGet . Par défaut, la version la plus récente du module est téléchargée à partir du dépôt. L’objet est envoyé vers le bas du pipeline à l’applet de Install-Module
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
Utilise Install-Module
le paramètre Name pour spécifier le module PowerShellGet . Par défaut, la version la plus récente du module est téléchargée à partir du dépôt 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
Utilise Install-Module
le paramètre Name pour spécifier le module PowerShellGet . Le paramètre MinimumVersion spécifie que la version 2.0.1 est téléchargée à partir du dépôt 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
Utilise Install-Module
le paramètre Name pour 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
Utilise Install-Module
le paramètre Name pour spécifier le module PowerShellGet .
Install-Module
télécharge et installe la dernière version 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 la licence.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowClobber
Remplace les messages d’avertissement concernant les conflits d’installation liés aux commandes existantes sur un ordinateur.
Remplace les commandes existantes qui portent 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 |
Required: | False |
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 |
Required: | False |
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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Spécifie un compte d’utilisateur qui dispose des droits d’installation d’un module pour un fournisseur ou une source de package spécifié.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Force
Installe un module et remplace les messages d’avertissement relatifs aux conflits d’installation de module. Si un module portant le même nom existe déjà sur l’ordinateur, Force permet d’installer plusieurs versions. S’il existe un module portant le même nom et la même version, Force remplace cette version. Force et AllowClobber peuvent être utilisés ensemble dans une Install-Module
commande.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Utilisé pour l’entrée de pipeline. Une erreur est générée si une valeur fournie directement à InputObject. Utilisez le pipeline pour passer des objets avec le paramètre InputObject .
Type: | PSObject[] |
Position: | 0 |
Default value: | None |
Required: | True |
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 |
Required: | False |
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. Si une version plus récente du module est 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 |
Required: | False |
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 de noms de module séparés par des virgules est acceptée. Le nom du module doit correspondre au nom du module dans le référentiel. Utilisez Find-Module
pour obtenir la liste des noms de modules.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | 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 |
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
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 dépôt inscrit dans la Install-Module
commande . Pour inscrire un dépôt, utilisez Register-PSRepository
.
Pour afficher les dépôts inscrits, utilisez Get-PSRepository
.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
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 |
Required: | False |
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 les modules dans un emplacement accessible à tous les utilisateurs de l’ordinateur :
$env:ProgramFiles\PowerShell\Modules
CurrentUser installe les modules dans un emplacement accessible uniquement à l’utilisateur actuel de l’ordinateur. Par exemple :
$home\Documents\PowerShell\Modules
Lorsqu’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, qui nécessite une élévation pour l’installation.
Type: | String |
Accepted values: | CurrentUser, AllUsers |
Position: | Named |
Default value: | None |
Required: | False |
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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Affiche ce qui se passerait si une Install-Module
commande était exécutée. 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
PSRepositoryItemInfo
Find-Module
crée des objets PSRepositoryItemInfo qui peuvent être envoyés dans le pipeline à Install-Module
.
String[]
PSObject[]
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 guise de bonne 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 de module spécifié par le paramètre Name n’existe pas dans le dépôt, Install-Module
retourne une erreur.
Pour installer plusieurs modules, utilisez le paramètre Name et spécifiez un tableau de noms de module séparés par des virgules. 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 dans le pipeline à Install-Module
. Le pipeline est une autre façon de spécifier plusieurs modules à installer dans une seule commande.
Par défaut, les modules pour 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).
L’installation d’un .psm1
module échoue et ne peut pas être importée s’il n’a pas , .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é, Install-Module
continue en mode silencieux, 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 n’est pas é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.