Partager via


Update-Module

Télécharge et installe la version la plus récente des modules spécifiés à partir d’une galerie en ligne sur l’ordinateur local.

Syntax

Update-Module
      [[-Name] <String[]>]
      [-RequiredVersion <String>]
      [-MaximumVersion <String>]
      [-Credential <PSCredential>]
      [-Scope <String>]
      [-Proxy <Uri>]
      [-ProxyCredential <PSCredential>]
      [-Force]
      [-AllowPrerelease]
      [-AcceptLicense]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

L’applet Update-Module de commande installe la dernière version d’un module à partir d’une galerie en ligne. Vous êtes invité à confirmer la mise à jour avant son installation. Mises à jour sont installés uniquement pour les modules qui ont été installés sur l’ordinateur local avec Install-Module. Update-Module recherche les $env:PSModulePath modules installés.

Update-Module sans paramètre spécifié met à jour tous les modules installés. Pour spécifier un module à mettre à jour, utilisez le paramètre Name . Vous pouvez effectuer une mise à jour vers la version spécifique d’un module à l’aide du paramètre RequiredVersion .

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.

Si un module installé est déjà la version la plus récente, le module n’est pas mis à jour. Si le module est introuvable dans $env:PSModulePath, une erreur s’affiche.

Pour afficher les modules installés, utilisez Get-InstalledModule.

Exemples

Exemple 1 : Mettre à jour tous les modules

Cet exemple met à jour tous les modules installés vers la dernière version d’une galerie en ligne.

Update-Module

Exemple 2 : Mettre à jour un module par nom

Cet exemple met à jour un module spécifique vers la dernière version d’une galerie en ligne.

Update-Module -Name SpeculationControl

Update-Module utilise le paramètre Name pour mettre à jour un module spécifique, SpeculationControl.

Exemple 3 : Afficher les Update-Module s’exécutent

Cet exemple montre comment exécuter un scénario de scénario de type « what-if Update-Module ». La commande n’est pas exécutée.

Update-Module -WhatIf

What if: Performing the operation "Update-Module" on target "Version '2.8.0' of module
  'Carbon', updating to version '2.8.1'".
What if: Performing the operation "Update-Module" on target "Version '1.0.10' of module
  'SpeculationControl', updating to version '1.0.14'".

Update-Module utilise le paramètre WhatIf pour afficher ce qui se passerait en cas Update-Module d’exécution.

Exemple 4 : Mettre à jour un module vers une version spécifiée

Dans cet exemple, un module est mis à jour vers une version spécifique. La version doit exister dans la galerie en ligne ou une erreur s’affiche.

Update-Module -Name SpeculationControl -RequiredVersion 1.0.14

Update-Module utilise le paramètre Name pour spécifier le module SpeculationControl. Le paramètre RequiredVersion spécifie la version 1.0.14.

Exemple 5 : Mettre à jour un module sans confirmation

Cet exemple ne demande pas de confirmation de mise à jour du module vers la dernière version à partir d’une galerie en ligne. Si le module est déjà installé, le paramètre Force réinstalle le module.

Update-Module -Name SpeculationControl -Force

Update-Module utilise le paramètre Name pour spécifier le module SpeculationControl. Le paramètre Force met à jour le module sans demander la confirmation de l’utilisateur.

Paramètres

-AcceptLicense

Acceptez automatiquement le contrat de licence pendant l’installation 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 de mettre à jour un module avec le module plus récent 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 Update-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 est autorisé à mettre à jour un module.

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

-Force

Force une mise à jour de chaque module spécifié sans invite de demande de confirmation. Si le module est déjà installé, Force réinstalle le module.

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

-MaximumVersion

Spécifie la version maximale d’un seul module à mettre à jour. Vous ne pouvez pas ajouter ce paramètre si vous tentez de mettre à jour plusieurs modules. 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

-Name

Spécifie les noms d’un ou plusieurs modules à mettre à jour. Update-Module recherche $env:PSModulePath les modules à mettre à jour. Si aucune correspondance n’est trouvée dans $env:PSModulePath pour le nom de module spécifié, une erreur se produit.

Les caractères génériques sont acceptés dans les noms de module. Si vous ajoutez des caractères génériques au nom spécifié et qu’aucune correspondance n’est trouvée, aucune erreur ne se produit.

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

-PassThru

Retourne un objet représentant l’élément que vous utilisez. Par défaut, cette applet de commande ne génère aucun résultat.

Type:SwitchParameter
Position:Named
Default value:None
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 à une 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

-RequiredVersion

Spécifie la version exacte vers laquelle le module installé existant sera mis à jour. La version spécifiée par RequiredVersion doit exister dans la galerie en ligne ou une erreur s’affiche. Si plusieurs modules sont mis à jour dans une seule commande, vous ne pouvez pas utiliser RequiredVersion.

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. Si l’étendue n’est pas spécifiée, la mise à jour est installée dans l’étendue CurrentUser .

L’étendue AllUsers nécessite des autorisations élevées et installe les modules dans un emplacement accessible à tous les utilisateurs de l’ordinateur :

$env:ProgramFiles\PowerShell\Modules

CurrentUser ne nécessite pas d’autorisations élevées et installe les modules dans un emplacement accessible uniquement à l’utilisateur actuel de l’ordinateur :

$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:CurrentUser
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Affiche ce qui se produirait en cas Update-Module d’exécution. 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[]

String

PSCredential

Uri

Sorties

Object

Notes

PowerShell inclut les alias suivants pour Update-Module:

  • Toutes les plateformes :
    • upmo

Pour PowerShell version 6.0 et versions ultérieures, l’étendue d’installation par défaut est toujours CurrentUser. Les mises à jour de module pour CurrentUser, $HOME\Documents\PowerShell\Modules, n’ont pas besoin d’autorisations élevées. Les mises à jour de module pour AllUsers, $env:ProgramFiles\PowerShell\Modules, nécessitent des autorisations élevées.

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.

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

Si le module que vous spécifiez avec le paramètre Name n’a pas été installé à l’aide Install-Modulede , une erreur se produit.

Vous pouvez uniquement exécuter Update-Module sur les modules que vous avez installés à partir de la galerie en ligne en exécutant Install-Module.

Si Update-Module tente de mettre à jour les fichiers binaires en cours d’utilisation, Update-Module retourne une erreur qui identifie les processus problématiques. L’utilisateur est informé de réessayer Update-Module une fois les processus arrêtés.