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 ist. Aktualisierungen werden nur für Module installiert, die auf dem lokalen Computer installiert wurden.Install-Module
Update-Module
sucht $env:PSModulePath
nach installierten Modulen.
Update-Module
ohne angegebene Parameter werden alle installierten Module aktualisiert. Verwenden Sie zum Angeben eines zu aktualisierenden Moduls den Parameter "Name ". Sie können mithilfe des Parameters "RequiredVersion " auf die spezifische Version eines Moduls aktualisieren.
Wenn ein installiertes Modul bereits die neueste Version ist, wird das Modul nicht aktualisiert. Wenn das Modul nicht in $env:PSModulePath
gefunden wird, wird ein Fehler angezeigt.
Um die installierten Module anzuzeigen, verwenden Sie Get-InstalledModule
.
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 nach Name
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.
Beispiel 3: Anzeigen von Was-wenn Update-Module ausgeführt wird
In diesem Beispiel wird ein Szenario ausgeführt, das zeigt, 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 anzeigen, was geschehen würde, wenn Update-Module
sie ausgeführt wurden.
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 ein Fehler wird angezeigt.
Update-Module -Name SpeculationControl -RequiredVersion 1.0.14
Update-Module
verwendet den Parameter "Name " zum Angeben des Moduls", "SpekulationControl". 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 aufgefordert, das Modul auf die neueste Version aus einem Onlinekatalog zu aktualisieren. Wenn das Modul bereits installiert ist, installiert der Force-Parameter das Modul erneut.
Update-Module -Name SpeculationControl -Force
Update-Module
verwendet den Parameter "Name " zum Angeben des Moduls", "SpekulationControl". Der Force-Parameter aktualisiert das Modul, ohne die Benutzerbestätigung anzufordern.
Parameter
-AcceptLicense
Akzeptieren Sie während der Installation automatisch die Lizenzvereinbarung, wenn das Paket sie benötigt.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowPrerelease
Ermöglicht Es Ihnen, ein Modul mit dem neueren Modul zu aktualisieren, das als Vorabrelease gekennzeichnet ist.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Fordert Sie vor der Ausführung Update-Module
zur Bestätigung auf.
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 Aufforderung zur Bestätigung. Wenn das Modul bereits installiert ist , wird das Modul neu installiert.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumVersion
Gibt die maximale Version eines einzelnen Moduls an, das aktualisiert werden soll. Sie können diesen Parameter nicht hinzufügen, wenn Sie versuchen, mehrere Module zu aktualisieren. Die Parameter "MaximumVersion " und " RequiredVersion " können nicht im gleichen Befehl verwendet werden.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Gibt die Namen eines oder mehrerer Module an, die aktualisiert werden sollen. Update-Module
sucht $env:PSModulePath
nach den Modulen, die aktualisiert werden sollen. Wenn keine Übereinstimmungen für den angegebenen Modulnamen 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.
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
Gibt einen Proxyserver für die Anforderung an, anstatt direkt mit einer Internetressource zu verbinden.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProxyCredential
Gibt ein Benutzerkonto an, das über die Berechtigung zum Verwenden des Proxyservers verfügt, der vom Proxyparameter angegeben ist.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-RequiredVersion
Gibt die genaue Version an, auf die das vorhandene installierte Modul aktualisiert wird. Die von RequiredVersion angegebene Version muss im Onlinekatalog vorhanden sein, oder ein Fehler wird angezeigt. Wenn mehrere Module in einem einzelnen Befehl aktualisiert werden, können Sie "RequiredVersion" nicht verwenden.
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 der Bereich nicht angegeben ist, wird das Update im CurrentUser-Bereich installiert.
Der Bereich "AllUsers " erfordert erhöhte Berechtigungen und installiert Module an einem Speicherort, der für alle Benutzer des Computers zugänglich ist:
$env:ProgramFiles\PowerShell\Modules
Der CurrentUser erfordert keine erhöhten Berechtigungen und installiert Module an einem Speicherort, der nur für den aktuellen Benutzer des Computers zugänglich ist:
$home\Documents\PowerShell\Modules
Wenn kein Bereich definiert ist, wird die Standardeinstellung basierend auf der PowerShellGet-Version festgelegt.
- In PowerShellGet-Versionen 2.0.0 und höher ist CurrentUser standard, was keine Erhöhung für die Installation erfordert.
- In PowerShellGet 1.x-Versionen ist die Standardeinstellung "AllUsers", die eine Erhöhung für die Installation 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 geschieht, wenn Update-Module
ausgeführt wird. 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[]
Ausgaben
Hinweise
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\Modules
benötigen erhöhte Berechtigungen.
Wichtig
Ab April 2020 unterstützt der PowerShell-Katalog die TLS-Versionen (Transport Layer Security) 1.0 und 1.1 nicht mehr. Wenn Sie nicht TLS 1.2 oder höher verwenden, erhalten Sie beim Versuch des Zugriffs auf den PowerShell-Katalog eine Fehlermeldung. Mit dem folgenden Befehl können Sie sicherstellen, dass Sie TLS 1.2 verwenden:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Weitere Informationen finden Sie im PowerShell-Blog in der Ankündigung.
Update-Module
wird auf PowerShell 3.0 oder höher Veröffentlichungen von PowerShell, unter Windows 7 oder Windows 2008 R2 und späteren Versionen von Windows ausgeführt.
Wenn das modul, das Sie mit dem Parameter "Name " angeben, nicht mithilfe Install-Module
installiert wurde, tritt ein Fehler auf.
Sie können nur module ausführen, die Sie aus dem Onlinekatalog installiert haben Update-Module
, indem Sie ausführen Install-Module
.
Wenn Update-Module
versucht wird, Binärdateien zu aktualisieren, die verwendet werden, gibt einen Fehler zurück, Update-Module
der die Problemprozesse identifiziert. Der Benutzer wird informiert, nachdem die Prozesse beendet wurden, um Update-Module
erneut zu versuchen.