Freigeben über


Update-Module

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

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, SpeculationControl, zu aktualisieren.

Beispiel 3: Anzeigen von Was-wäre-wenn-Update-Module ausgeführt wird

In diesem Beispiel wird ein Was-wäre-wenn-Szenario ausgeführt, um zu zeigen, was geschieht, wenn Update-Module sie 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 , um anzuzeigen, was bei Update-Module Ausführung geschehen 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, oder es 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, installiert der Parameter Force das Modul erneut.

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 während der Installation automatisch, wenn das Paket dies erfordert.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AllowPrerelease

Ermöglicht es Ihnen, ein Modul mit dem neueren Modul zu aktualisieren, das als Vorabversionen gekennzeichnet ist.

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

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Fordert Sie zur Bestätigung auf, bevor Update-Module ausgeführt wird.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Credential

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

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Force

Erzwingt eine Aktualisierung jedes angegebenen Moduls ohne Aufforderung zur Bestätigung. Wenn das Modul bereits installiert ist, installiert Force das Modul erneut.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MaximumVersion

Das Proxy-Cmdlet verwendet den Wert dieses Parameters, um eine NuGet-Versionssuchzeichenfolge für die Verwendung mit dem Parameter "Version " Update-PSResourcezu erstellen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Name

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

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

Typ:String[]
Position:0
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:True

-PassThru

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

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Proxy

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

Typ:Uri
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ProxyCredential

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

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-RequiredVersion

Das Proxy-Cmdlet verwendet den Wert dieses Parameters, um eine NuGet-Versionssuchzeichenfolge für die Verwendung mit dem Parameter "Version " Update-PSResourcezu erstellen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Scope

Gibt den Installationsumfang 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

Der 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 "CurrentUser" standardmäßig "CurrentUser", für das keine Erhöhung für die Installation erforderlich ist.
  • In PowerShellGet 1.x-Versionen ist die Standardeinstellung "AllUsers", für die eine Erhöhung für die Installation erforderlich ist.
Typ:String
Zulässige Werte:CurrentUser, AllUsers
Position:Named
Standardwert:CurrentUser
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was passiert, wenn Update-Module ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren: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\Modulesbenötigen keine erhöhten Berechtigungen. Modulupdates für AllUsers, $env:ProgramFiles\PowerShell\Modulesbenötigen erhöhte Berechtigungen.

Der PowerShell-Katalog unterstützt die Tls-Versionen 1.0 und 1.1 nicht mehr. Sie müssen TLS 1.2 oder höher verwenden. Verwenden Sie den folgenden Befehl, um sicherzustellen, dass Sie TLS 1.2 verwenden:

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

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

Wenn das mit dem Parameter Name angegebene Modul nicht mithilfe Install-Moduledes Namensparameters installiert wurde, tritt ein Fehler auf.

Sie können nur auf Modulen ausgeführt werden Update-Module , die Sie aus dem Onlinekatalog installiert haben, indem Sie folgendes ausführen Install-Module.

Wenn Update-Module versucht wird, binärdateien zu aktualisieren, die verwendet werden, wird ein Fehler zurückgegeben, Update-Module der die Problemprozesse identifiziert. Der Benutzer wird informiert, den Vorgang erneut zu wiederholen Update-Module , nachdem die Prozesse beendet wurden.