Freigeben über


Update-Module

Lädt die neueste Version der angegebenen Module aus einem Onlinekatalog auf den lokalen Computer herunter und installiert diese

Syntax

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

Beschreibung

Das Update-Module Cmdlet installiert die neueste Version eines Moduls aus einem Onlinekatalog. Sie werden aufgefordert, das Update zu bestätigen, bevor es installiert wird. Updates werden nur für Module installiert, die auf dem lokalen Computer mit Install-Moduleinstalliert wurden. Update-Module sucht nach $env:PSModulePath installierten Modulen.

Dies ist ein Proxy-Cmdlet für das Update-PSResource Cmdlet in Microsoft.PowerShell.PSResourceGet. Weitere Informationen finden Sie unter Update-PSResource.

Beispiele

Beispiel 1: Aktualisieren aller Module

In diesem Beispiel werden alle installierten Module auf die neueste Version in einem Onlinekatalog aktualisiert.

Update-Module

Beispiel 2: Aktualisieren eines Moduls anhand des Namens

In diesem Beispiel wird ein bestimmtes Modul auf die neueste Version in einem Onlinekatalog aktualisiert.

Update-Module -Name SpeculationControl

Update-Module verwendet den Parameter Name , um ein bestimmtes Modul zu aktualisieren, SpeculationControl.

Beispiel 3: Anzeigen von Was-wäre-wäre-wenn-Update-Module Ausführungen

In diesem Beispiel wird ein Was-wäre-wenn-Szenario ausgeführt, um zu zeigen, was geschieht, wenn Update-Module ausgeführt wird. Der Befehl wird nicht ausgeführt.

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 verwendet den WhatIf-Parameter , der anzeigt, was passieren würde, wenn Update-Module ausgeführt würde.

Beispiel 4: Aktualisieren eines Moduls auf eine angegebene Version

In diesem Beispiel wird ein Modul auf eine bestimmte Version aktualisiert. Die Version muss im Onlinekatalog vorhanden sein, andernfalls wird ein Fehler angezeigt.

Update-Module -Name SpeculationControl -RequiredVersion 1.0.14

Update-Module verwendet den Parameter Name , um das Modul "SpeculationControl" anzugeben. Der Parameter RequiredVersion gibt die Version 1.0.14 an.

Beispiel 5: Aktualisieren eines Moduls ohne Bestätigung

In diesem Beispiel wird keine Bestätigung zum Aktualisieren des Moduls auf die neueste Version aus einem Onlinekatalog angefordert. Wenn das Modul bereits installiert ist, wird das Modul mit dem Force-Parameter neu installiert.

Update-Module -Name SpeculationControl -Force

Update-Module verwendet den Parameter Name , um das Modul "SpeculationControl" anzugeben. Der Force-Parameter aktualisiert das Modul, ohne eine Benutzerbestätigung anzufordern.

Parameter

-AcceptLicense

Akzeptieren Sie den Lizenzvertrag automatisch während der Installation, wenn dies für das Paket erforderlich ist.

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

-AllowPrerelease

Ermöglicht ihnen das Aktualisieren eines Moduls mit dem neueren Modul, das als Vorabversion gekennzeichnet ist.

Das Proxy-Cmdlet ordnet diesen Parameter dem Prerelease-Parameter von zu Update-PSResource.

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

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie ausführen Update-Module.

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

-Credential

Gibt ein Benutzerkonto an, das über die Berechtigung zum Aktualisieren eines Moduls verfügt.

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

-Force

Erzwingt eine Aktualisierung jedes angegebenen Moduls, ohne dass eine Bestätigung angefordert werden muss. Wenn das Modul bereits installiert ist, erzwingt die Neuinstallation des Moduls.

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

-MaximumVersion

Das Proxy-Cmdlet verwendet den Wert dieses Parameters, um eine NuGet-Versionssuchzeichenfolge zur Verwendung mit dem Versionsparameter von Update-PSResourcezu erstellen.

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

-Name

Gibt die Namen eines oder mehrerer zu aktualisierenden Module an. Update-Module sucht nach $env:PSModulePath den zu aktualisierenden Modulen. Wenn in $env:PSModulePath für den angegebenen Modulnamen keine Übereinstimmungen gefunden werden, tritt ein Fehler auf.

In Modulnamen werden Wildcards akzeptiert. Wenn Sie dem angegebenen Namen Wildcardzeichen hinzufügen und keine Übereinstimmungen gefunden werden, tritt kein Fehler auf.

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

-PassThru

Gibt ein Objekt zurück, das das Element darstellt, mit dem Sie arbeiten. Standardmäßig wird von diesem Cmdlet keine Ausgabe generiert.

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

-Proxy

Das Proxy-Cmdlet ignoriert diesen Parameter, da er von nicht unterstützt wird Update-PSResource.

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

-ProxyCredential

Das Proxy-Cmdlet ignoriert diesen Parameter, da er von nicht unterstützt wird Update-PSResource.

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

-RequiredVersion

Das Proxy-Cmdlet verwendet den Wert dieses Parameters, um eine NuGet-Versionssuchzeichenfolge zur Verwendung mit dem Versionsparameter von Update-PSResourcezu erstellen.

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

-Scope

Gibt den Bereich der Installation des Moduls an. Die zulässigen Werte für diesen Parameter sind AllUsers und CurrentUser. Wenn Bereich nicht angegeben ist, wird das Update im CurrentUser-Bereich installiert.

Der Bereich AllUsers erfordert erhöhte Berechtigungen und installiert Module an einem Speicherort, auf den alle Benutzer des Computers zugreifen können:

$env:ProgramFiles\PowerShell\Modules

CurrentUser erfordert keine erhöhten Berechtigungen und installiert Module an einem Speicherort, auf den nur der aktuelle Benutzer des Computers zugreifen kann:

$HOME\Documents\PowerShell\Modules

Wenn kein Bereich definiert ist, wird der Standardwert basierend auf der PowerShellGet-Version festgelegt.

  • In PowerShellGet-Versionen 2.0.0 und höher ist der Standardwert CurrentUser. Für die Installation ist keine Rechteerweiterung erforderlich.
  • In PowerShellGet 1.x-Versionen ist die Standardeinstellung AllUsers, was für die Installation erhöhte Rechte erfordert.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:CurrentUser
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Zeigt, was bei Ausführungen passieren Update-Module würde. Das Cmdlet wird nicht ausgeführt.

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

Eingaben

String[]

String

PSCredential

Uri

Ausgaben

Object

Hinweise

PowerShell enthält die folgenden Aliase für Update-Module:

  • Alle Plattformen:
    • upmo

Für PowerShell Version 6.0 und höher ist der Standardinstallationsbereich immer CurrentUser. Modulupdates für CurrentUser, $HOME\Documents\PowerShell\Modules, benötigen keine erhöhten Berechtigungen. Modulupdates für AllUsers, $env:ProgramFiles\PowerShell\Modulesbenötigen erhöhte Berechtigungen.

Die PowerShell-Katalog die TLS-Versionen 1.0 und 1.1 (Transport Layer Security) nicht mehr unterstützt. Sie müssen TLS 1.2 oder höher verwenden. Mit dem folgenden Befehl können Sie sicherstellen, dass Sie TLS 1.2 verwenden:

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

Update-Module wird unter PowerShell 3.0 oder höheren Versionen von PowerShell, unter Windows 7 oder Windows 2008 R2 und höheren Versionen von Windows ausgeführt.

Wenn das Modul, das Sie mit dem Parameter Name angeben, nicht mit Install-Moduleinstalliert wurde, tritt ein Fehler auf.

Sie können nur für Module ausführen Update-Module , die Sie aus dem Onlinekatalog installiert haben, indem Sie ausführen Install-Module.

Wenn Update-Module versucht wird, verwendete Binärdateien zu aktualisieren, gibt einen Fehler zurück, Update-Module der die Problemprozesse identifiziert. Der Benutzer wird informiert, nach dem Beenden der Prozesse einen Wiederholungsversuch Update-Module auszuführen.