Partilhar via


Update-Module

Transfere e instala a versão mais recente dos módulos especificados a partir de uma galeria online para o computador local.

Syntax

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

Description

O Update-Module cmdlet instala a versão mais recente de um módulo a partir de uma galeria online. É-lhe pedido que confirme a atualização antes de ser instalada. Atualizações são instalados apenas para módulos que foram instalados no computador local com Install-Module. Update-Module procura $env:PSModulePath módulos instalados.

Este é um cmdlet proxy para o Update-PSResource cmdlet no Microsoft.PowerShell.PSResourceGet. Para obter mais informações, veja Update-PSResource.

Exemplos

Exemplo 1: Atualizar todos os módulos

Este exemplo atualiza todos os módulos instalados para a versão mais recente numa galeria online.

Update-Module

Exemplo 2: Atualizar um módulo por nome

Este exemplo atualiza um módulo específico para a versão mais recente numa galeria online.

Update-Module -Name SpeculationControl

Update-Module utiliza o parâmetro Name para atualizar um módulo específico, SpeculationControl.

Exemplo 3: ver as execuções de Update-Module de hipóteses

Este exemplo faz um cenário de hipótese para mostrar o que acontece se Update-Module for executado. O comando não é executado.

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 utiliza o parâmetro WhatIf para apresentar o que aconteceria se Update-Module fosse executado.

Exemplo 4: atualizar um módulo para uma versão especificada

Neste exemplo, um módulo é atualizado para uma versão específica. A versão tem de existir na galeria online ou é apresentado um erro.

Update-Module -Name SpeculationControl -RequiredVersion 1.0.14

Update-Module utiliza o parâmetro Nome para especificar o módulo SpeculationControl. O parâmetro RequiredVersion especifica a versão 1.0.14.

Exemplo 5: atualizar um módulo sem confirmação

Este exemplo não pede confirmação para atualizar o módulo para a versão mais recente a partir de uma galeria online. Se o módulo já estiver instalado, o parâmetro Force reinstala o módulo.

Update-Module -Name SpeculationControl -Force

Update-Module utiliza o parâmetro Nome para especificar o módulo SpeculationControl. O parâmetro Force atualiza o módulo sem pedir a confirmação do utilizador.

Parâmetros

-AcceptLicense

Aceite automaticamente o contrato de licença durante a instalação, se o pacote o exigir.

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

-AllowPrerelease

Permite-lhe atualizar um módulo com o módulo mais recente marcado como pré-lançamento.

O cmdlet proxy mapeia este parâmetro para o parâmetro Prerelease de Update-PSResource.

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

-Confirm

Pede-lhe confirmação antes de executar Update-Module.

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

-Credential

Especifica uma conta de utilizador que tem permissão para atualizar um módulo.

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

-Force

Força uma atualização de cada módulo especificado sem um pedido de confirmação. Se o módulo já estiver instalado, a Force reinstala o módulo.

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

-MaximumVersion

O cmdlet proxy utiliza o valor deste parâmetro para criar uma cadeia de pesquisa de versão NuGet para utilização com o parâmetro Versão de Update-PSResource.

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

-Name

Especifica os nomes de um ou mais módulos a atualizar. Update-Module procura $env:PSModulePath os módulos a atualizar. Se não forem encontradas correspondências no $env:PSModulePath nome do módulo especificado, ocorrerá um erro.

Os carateres universais são aceites nos nomes dos módulos. Se adicionar carateres universais ao nome especificado e não forem encontradas correspondências, não ocorrerá nenhum erro.

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

-PassThru

Devolve um objeto que representa o item com o qual está a trabalhar. Por predefinição, este cmdlet não gera quaisquer dados.

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

-Proxy

O cmdlet proxy ignora este parâmetro, uma vez que não é suportado pelo Update-PSResource.

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

-ProxyCredential

O cmdlet proxy ignora este parâmetro, uma vez que não é suportado pelo Update-PSResource.

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

-RequiredVersion

O cmdlet proxy utiliza o valor deste parâmetro para criar uma cadeia de pesquisa de versão NuGet para utilização com o parâmetro Versão de Update-PSResource.

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

-Scope

Especifica o âmbito de instalação do módulo. Os valores aceitáveis para este parâmetro são AllUsers e CurrentUser. Se Âmbito não for especificado, a atualização será instalada no âmbito CurrentUser .

O âmbito AllUsers requer permissões elevadas e instala módulos numa localização acessível a todos os utilizadores do computador:

$env:ProgramFiles\PowerShell\Modules

O CurrentUser não requer permissões elevadas e instala módulos numa localização acessível apenas ao utilizador atual do computador:

$HOME\Documents\PowerShell\Modules

Quando não é definido nenhum Âmbito , a predefinição é definida com base na versão do PowerShellGet.

  • No PowerShellGet versões 2.0.0 e superior, a predefinição é CurrentUser, que não requer elevação para instalação.
  • Nas versões do PowerShellGet 1.x, a predefinição é AllUsers, que requer elevação para instalação.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:CurrentUser
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra o que aconteceria se Update-Module fosse executado. O cmdlet não é executado.

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

Entradas

String[]

String

PSCredential

Uri

Saídas

Object

Notas

O PowerShell inclui os seguintes aliases para Update-Module:

  • Todas as plataformas:
    • upmo

Para a versão 6.0 e superior do PowerShell, o âmbito de instalação predefinido é sempre CurrentUser. As atualizações de módulos para CurrentUser, $HOME\Documents\PowerShell\Modules, não precisam de permissões elevadas. As atualizações de módulos para AllUsers, $env:ProgramFiles\PowerShell\Modules, precisam de permissões elevadas.

O Galeria do PowerShell já não suporta as versões 1.0 e 1.1 do Transport Layer Security (TLS). Tem de utilizar o TLS 1.2 ou superior. Utilize o seguinte comando para garantir que está a utilizar o TLS 1.2:

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

Update-Module é executado no PowerShell 3.0 ou versões posteriores do PowerShell, no Windows 7 ou Windows 2008 R2 e versões posteriores do Windows.

Se o módulo que especificou com o parâmetro Name não tiver sido instalado com Install-Module, ocorrerá um erro.

Só pode executar Update-Module em módulos que instalou a partir da galeria online ao executar Install-Module.

Se Update-Module tentar atualizar os binários que estão a ser utilizados, Update-Module devolve um erro que identifica os processos do problema. O utilizador é informado para tentar novamente Update-Module depois de os processos serem parados.