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 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. Une fois que vous avez 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 de poursuite de l’installation du module.
Les paramètres qui prennent 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 et z sont des
x.y.z
nombres - Les versions préliminaires ont un format de
x.y.z-<prerelease_label>
où est<prerelease_label>
la chaîne arbitraire affectée à cette version.
Ces exemples utilisent le PowerShell Gallery comme seul dépôt inscrit. Get-PSRepository
affiche les dépôts inscrits. Si vous avez plusieurs dépôts 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 dépôt 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 dernière version 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 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
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 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
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
.
Exemple 6 : Installer la dernière version préliminaire d’un module
Cet exemple montre comment installer la dernière version d’un module lorsque cette version est une version préliminaire. L’installation d’une version préliminaire nécessite le paramètre AllowPrerelease .
Install-Module -Name Microsoft.PowerShell.Crescendo -AllowPrerelease
À l’aide de cette méthode, vous obtenez la dernière version disponible. Si la dernière version n’est pas une préversion, vous obtenez la dernière version stable du module.
Exemple 7 : Installer une version préliminaire spécifique d’un module
Cet exemple montre comment installer une version préliminaire spécifique d’un module. L’applet Find-Module
de commande peut être utilisée pour rechercher les versions préliminaires des modules dans le PowerShell Gallery.
Les versions préliminaires ont un format de <version_number>-<prerelease_label>
.
Find-Module PSReadLine -AllVersions -AllowPrerelease | Select-Object -First 5
Version Name Repository Description
------- ---- ---------- -----------
2.2.6 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.5 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.4-beta1 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.3 PSReadLine PSGallery Great command line editing in the PowerS…
2.2.2 PSReadLine PSGallery Great command line editing in the PowerS…
Install-Module -Name PSReadLine -RequiredVersion 2.2.4-beta1 -AllowPrerelease
Utilisez la version indiquée dans le PowerShell Gallery pour la valeur du paramètre RequiredVersion.
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 d’une 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 concernant les 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 disposant 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 concernant les 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 modules 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 nom du dépôt à partir duquel 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 les versions de PowerShellGet 1.x, la valeur par défaut est AllUsers, qui nécessite une élévation pour l’installation.
- Pour PowerShellGet versions 2.0.0 et ultérieures dans PowerShell 6 ou version ultérieure :
- La valeur par défaut est CurrentUser, qui ne nécessite pas d’élévation pour l’installation.
- Si vous exécutez dans une session avec élévation de privilèges, la valeur par défaut est AllUsers.
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 vers le bas du 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
PowerShell inclut les alias suivants pour Install-Module
:
- Toutes les plateformes :
inmo
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 version ultérieure, vous recevez une erreur lorsque vous tentez d’accéder au 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 en matière 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 importés automatiquement 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 de noms de modules 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 vers le bas du 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 d’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 si elle 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é, 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 n’est pas égale à la valeur RequiredVersion .
Install-Module
installe également tous les modules dépendants spécifiés comme requis par l’éditeur de module.
L’éditeur répertorie les modules requis et leurs versions dans le manifeste du module.