Update-Module

Pobiera i instaluje najnowszą wersję określonych modułów z galerii online na komputerze lokalnym.

Składnia

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

Opis

Polecenie Update-Module cmdlet instaluje najnowszą wersję modułu z galerii online. Zostanie wyświetlony monit o potwierdzenie aktualizacji przed jej zainstalowaniem. Aktualizacje są instalowane tylko w przypadku modułów zainstalowanych na komputerze lokalnym z programem Install-Module. Update-Module wyszukuje $env:PSModulePath zainstalowane moduły.

Jest to polecenie cmdlet serwera proxy dla Update-PSResource polecenia cmdlet w elemecie Microsoft.PowerShell.PSResourceGet. Aby uzyskać więcej informacji, zobacz Update-PSResource.

Przykłady

Przykład 1: Aktualizowanie wszystkich modułów

Ten przykład aktualizuje wszystkie zainstalowane moduły do najnowszej wersji w galerii online.

Update-Module

Przykład 2: Aktualizowanie modułu według nazwy

Ten przykład aktualizuje określony moduł do najnowszej wersji w galerii online.

Update-Module -Name SpeculationControl

Update-Module używa parametru Name w celu zaktualizowania określonego modułu , SpeculationControl.

Przykład 3. Wyświetlanie przebiegów Update-Module analizy co-jeżeli

W tym przykładzie jest wykonywany scenariusz analizy co-jeżeli, aby pokazać, co się stanie w przypadku Update-Module uruchomienia. Polecenie nie jest uruchamiane.

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 używa parametru WhatIf wyświetla, co by się stało, gdyby Update-Module zostały uruchomione.

Przykład 4. Aktualizowanie modułu do określonej wersji

W tym przykładzie moduł jest aktualizowany do określonej wersji. Wersja musi istnieć w galerii online lub jest wyświetlany błąd.

Update-Module -Name SpeculationControl -RequiredVersion 1.0.14

Update-Module używa parametru Name w celu określenia modułu SpeculationControl. Parametr RequiredVersion określa wersję 1.0.14.

Przykład 5. Aktualizowanie modułu bez potwierdzenia

W tym przykładzie nie jest wymagane potwierdzenie aktualizacji modułu do najnowszej wersji z galerii online. Jeśli moduł jest już zainstalowany, parametr Force ponownie zainstaluje moduł.

Update-Module -Name SpeculationControl -Force

Update-Module używa parametru Name w celu określenia modułu SpeculationControl. Parametr Force aktualizuje moduł bez żądania potwierdzenia użytkownika.

Parametry

-AcceptLicense

Automatycznie zaakceptuj umowę licencyjną podczas instalacji, jeśli pakiet go wymaga.

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

-AllowPrerelease

Umożliwia zaktualizowanie modułu przy użyciu nowszego modułu oznaczonego jako wersję wstępną.

Polecenie cmdlet serwera proxy mapuje ten parametr na parametr wersji wstępnej polecenia Update-PSResource.

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

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia Update-Module.

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

-Credential

Określa konto użytkownika, które ma uprawnienia do aktualizowania modułu.

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

-Force

Wymusza aktualizację każdego określonego modułu bez monitu o potwierdzenie. Jeśli moduł jest już zainstalowany, wymuś ponowne zainstalowanie modułu.

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

-MaximumVersion

Polecenie cmdlet serwera proxy używa wartości tego parametru do utworzenia ciągu wyszukiwania wersji NuGet do użycia z parametrem Version .Update-PSResource

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

-Name

Określa nazwy co najmniej jednego modułu do zaktualizowania. Update-Module wyszukuje $env:PSModulePath moduły do zaktualizowania. Jeśli dla określonej nazwy modułu nie zostaną znalezione $env:PSModulePath żadne dopasowania, wystąpi błąd.

Symbole wieloznaczne są akceptowane w nazwach modułów. W przypadku dodawania symboli wieloznacznych do określonej nazwy i nie znaleziono dopasowań, nie wystąpi błąd.

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

-PassThru

Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie to polecenie cmdlet nie generuje żadnego wyniku.

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

-Proxy

Polecenie cmdlet serwera proxy ignoruje ten parametr, ponieważ nie jest obsługiwany przez Update-PSResourceprogram .

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

-ProxyCredential

Polecenie cmdlet serwera proxy ignoruje ten parametr, ponieważ nie jest obsługiwany przez Update-PSResourceprogram .

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

-RequiredVersion

Polecenie cmdlet serwera proxy używa wartości tego parametru do utworzenia ciągu wyszukiwania wersji NuGet do użycia z parametrem Version .Update-PSResource

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

-Scope

Określa zakres instalacji modułu. Dopuszczalne wartości tego parametru to AllUsers i CurrentUser. Jeśli zakres nie zostanie określony, aktualizacja zostanie zainstalowana w zakresie CurrentUser .

Zakres AllUsers wymaga podniesionych uprawnień i instaluje moduły w lokalizacji dostępnej dla wszystkich użytkowników komputera:

$env:ProgramFiles\PowerShell\Modules

Bieżący użytkownik nie wymaga podniesionych uprawnień i instaluje moduły w lokalizacji dostępnej tylko dla bieżącego użytkownika komputera:

$HOME\Documents\PowerShell\Modules

Jeśli zakres nie jest zdefiniowany, wartość domyślna jest ustawiana na podstawie wersji modułu PowerShellGet.

  • W programie PowerShellGet w wersji 2.0.0 lub nowszej wartość domyślna to CurrentUser, która nie wymaga podniesienia uprawnień do instalacji.
  • W wersjach powerShellGet 1.x wartość domyślna to AllUsers, która wymaga podniesienia uprawnień do instalacji.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:CurrentUser
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Pokazuje, co się stanie w przypadku Update-Module uruchomienia. Polecenie cmdlet nie jest uruchamiane.

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

Dane wejściowe

String[]

String

PSCredential

Uri

Dane wyjściowe

Object

Uwagi

Program PowerShell zawiera następujące aliasy dla Update-Moduleprogramu :

  • Wszystkie platformy:
    • upmo

W przypadku programu PowerShell w wersji 6.0 lub nowszej domyślny zakres instalacji to zawsze CurrentUser. Aktualizacje modułu dla bieżącego użytkownika, $HOME\Documents\PowerShell\Modules, nie wymagają podniesionych uprawnień. Aktualizacje modułu dla wszystkich użytkowników, $env:ProgramFiles\PowerShell\Modules, wymagają podwyższonych uprawnień.

Galeria programu PowerShell nie obsługuje już protokołu Transport Layer Security (TLS) w wersji 1.0 i 1.1. Należy użyć protokołu TLS 1.2 lub nowszego. Użyj następującego polecenia, aby upewnić się, że używasz protokołu TLS 1.2:

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

Update-Module działa w wersjach programu PowerShell 3.0 lub nowszych programu PowerShell w systemach Windows 7 lub Windows 2008 R2 i nowszych wersjach systemu Windows.

Jeśli moduł określony za pomocą parametru Name nie został zainstalowany przy użyciu polecenia Install-Module, wystąpi błąd.

Możesz uruchomić Update-Module tylko w modułach zainstalowanych z galerii online, uruchamiając polecenie Install-Module.

Jeśli Update-Module próbuje zaktualizować pliki binarne, które są używane, Update-Module zwraca błąd, który identyfikuje procesy problemu. Użytkownik jest informowany o ponowieniu próby Update-Module po zatrzymaniu procesów.