Udostępnij za pośrednictwem


Update-Module

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

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 zainstalowaniem. Aktualizacje są instalowane tylko dla modułów zainstalowanych na komputerze lokalnym z programem Install-Module. Update-Module wyszukuje $env:PSModulePath zainstalowane moduły.

Update-Module bez parametrów określonych aktualizacji wszystkie zainstalowane moduły. Aby określić moduł do aktualizacji, użyj parametru Name . Możesz zaktualizować określoną wersję modułu przy użyciu parametru RequiredVersion .

Jeśli zainstalowany moduł jest już najnowszą wersją, moduł nie jest aktualizowany. Jeśli moduł nie zostanie znaleziony w $env:PSModulePathpliku , zostanie wyświetlony błąd.

Aby wyświetlić zainstalowane moduły, użyj polecenia Get-InstalledModule.

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

W tym przykładzie zaktualizowano 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 warunkowych

W tym przykładzie przedstawiono scenariusz analizy warunkowej, który pokazuje, 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 się stanie, 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 zostanie wyświetlony błąd.

Update-Module -Name SpeculationControl -RequiredVersion 1.0.14

Update-Module używa parametru Name , aby określić moduł SpekulacjeControl. Parametr RequiredVersion określa wersję 1.0.14.

Przykład 5. Aktualizowanie modułu bez potwierdzenia

W tym przykładzie nie jest wymagane potwierdzenie zaktualizowania 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 , aby określić moduł SpekulacjeControl. 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 wydanie wstępne.

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

Określa maksymalną wersję pojedynczego modułu do zaktualizowania. Nie można dodać tego parametru, jeśli próbujesz zaktualizować wiele modułów. Parametrów MaximumVersion i RequiredVersion nie można użyć w tym samym poleceniu.

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 nie znaleziono $env:PSModulePath dopasowań dla określonej nazwy modułu, wystąpi błąd.

Symbole wieloznaczne są akceptowane w nazwach modułów. W przypadku dodania 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

Określa serwer proxy dla żądania, zamiast łączyć się bezpośrednio z zasobem internetowym.

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

-ProxyCredential

Określa konto użytkownika, które ma uprawnienia do używania serwera proxy określonego przez parametr proxy .

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

-RequiredVersion

Określa dokładną wersję, do której zostanie zaktualizowany istniejący zainstalowany moduł. Wersja określona przez RequiredVersion musi istnieć w galerii online lub zostanie wyświetlony błąd. Jeśli więcej niż jeden moduł zostanie zaktualizowany w jednym poleceniu, nie można użyć elementu RequiredVersion.

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 podwyższonych 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 uprawnień z podwyższonym poziomem 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 programu 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

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ą podwyższonych uprawnień. Aktualizacje modułu dla wszystkich użytkowników, $env:ProgramFiles\PowerShell\Modules, wymagają podwyższonych uprawnień.

Ważne

Od kwietnia 2020 r. Galeria programu PowerShell nie obsługuje już protokołu Transport Layer Security (TLS) w wersji 1.0 i 1.1. Jeśli nie używasz protokołu TLS 1.2 lub nowszego, podczas próby uzyskania dostępu do Galeria programu PowerShell zostanie wyświetlony błąd. Użyj następującego polecenia, aby upewnić się, że używasz protokołu TLS 1.2:

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

Aby uzyskać więcej informacji, zobacz ogłoszenie w blogu programu PowerShell.

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żna uruchamiać 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.