Compartilhar via


Install-Module

Baixa um ou mais módulos de um repositório e os instala no computador local.

Sintaxe

NameParameterSet (Default)

Install-Module
    [-Name] <String[]>
    [-MinimumVersion <String>]
    [-MaximumVersion <String>]
    [-RequiredVersion <String>]
    [-Repository <String[]>]
    [-Credential <PSCredential>]
    [-Scope <String>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-AllowClobber]
    [-SkipPublisherCheck]
    [-Force]
    [-AllowPrerelease]
    [-AcceptLicense]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

InputObject

Install-Module
    [-InputObject] <PSObject[]>
    [-Credential <PSCredential>]
    [-Scope <String>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-AllowClobber]
    [-SkipPublisherCheck]
    [-Force]
    [-AcceptLicense]
    [-PassThru]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

O Install-Module cmdlet obtém um ou mais módulos que atendem aos critérios especificados de um repositório online. O cmdlet verifica se os resultados da pesquisa são módulos válidos e copia as pastas do módulo para o local de instalação. Os módulos instalados não são importados automaticamente após a instalação. Você pode filtrar qual módulo está instalado com base nas versões mínima, máxima e exata dos módulos especificados.

Se o módulo que está sendo instalado tiver o mesmo nome ou versão ou contiver comandos em um módulo existente, as mensagens de aviso serão exibidas. Depois de confirmar que deseja instalar o módulo e substituir os avisos, use os parâmetros e -Force os -AllowClobber parâmetros. Dependendo das configurações do repositório, talvez seja necessário responder a um prompt para que a instalação do módulo continue.

Esses exemplos usam a Galeria do PowerShell como o único repositório registrado. Get-PSRepository exibe os repositórios registrados. Se você tiver vários repositórios registrados, use o -Repository parâmetro para especificar o nome do repositório.

Exemplos

Exemplo 1: localizar e instalar um módulo

Este exemplo localiza um módulo no repositório e instala o módulo.

Find-Module -Name PowerShellGet | Install-Module

O Find-Module parâmetro Name usa o parâmetro Name para especificar o módulo PowerShellGet . Por padrão, a versão mais recente do módulo é baixada do repositório. O objeto é enviado pelo pipeline para o cmdlet Install-Module. Install-Module instala o módulo para todos os usuários em $env:ProgramFiles\PowerShell\Modules.

Exemplo 2: instalar um módulo por nome

Neste exemplo, a versão mais recente do módulo PowerShellGet está instalada.

Install-Module -Name PowerShellGet

O Install-Module parâmetro Name usa o parâmetro Name para especificar o módulo PowerShellGet . Por padrão, a versão mais recente do módulo é baixada do repositório e instalada.

Exemplo 3: instalar um módulo usando sua versão mínima

Neste exemplo, a versão mínima do módulo PowerShellGet está instalada. O parâmetro MinimumVersion especifica a versão mais baixa do módulo que deve ser instalada. Se uma versão mais recente do módulo estiver disponível, essa versão será baixada e instalada para todos os usuários.

Install-Module -Name PowerShellGet -MinimumVersion 2.0.1

O Install-Module parâmetro Name usa o parâmetro Name para especificar o módulo PowerShellGet . O parâmetro MinimumVersion especifica que a versão 2.0.1 é baixada do repositório e instalada. Como a versão 2.0.4 está disponível, essa versão é baixada e instalada para todos os usuários.

Exemplo 4: instalar uma versão específica de um módulo

Neste exemplo, uma versão específica do módulo PowerShellGet é instalada.

Install-Module -Name PowerShellGet -RequiredVersion 2.0.0

O Install-Module parâmetro Name usa o parâmetro Name para especificar o módulo PowerShellGet . O parâmetro RequiredVersion especifica que a versão 2.0.0 é baixada e instalada para todos os usuários.

Exemplo 5: Instalar um módulo somente para o usuário atual

Este exemplo baixa e instala a versão mais recente de um módulo, somente para o usuário atual.

Install-Module -Name PowerShellGet -Scope CurrentUser

O Install-Module parâmetro Name usa o parâmetro Name para especificar o módulo PowerShellGet . Install-Modulebaixa e instala a versão mais recente do PowerShellGet no diretório do usuário atual. $home\Documents\PowerShell\Modules

Parâmetros

-AcceptLicense

Para módulos que exigem uma licença, o AcceptLicense aceita automaticamente o contrato de licença durante a instalação. Para obter mais informações, consulte Módulos que exigem a aceitação da licença.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-AllowClobber

Substitui mensagens de aviso sobre conflitos de instalação sobre comandos existentes em um computador. Substitui os comandos existentes que têm o mesmo nome que os comandos que estão sendo instalados por um módulo. AllowClobber e Force podem ser usados juntos em um Install-Module comando.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-AllowPrerelease

Permite que você instale um módulo marcado como uma pré-lançamento.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

NameParameterSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Confirm

Solicita a confirmação antes de executar o cmdlet Install-Module.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:cf

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Credential

Especifica uma conta de usuário que tem direitos para instalar um módulo para um provedor ou origem de pacote especificado.

Propriedades do parâmetro

Tipo:PSCredential
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Force

Instala um módulo e substitui mensagens de aviso sobre conflitos de instalação do módulo. Se já existir um módulo com o mesmo nome no computador, o Force permitirá que várias versões sejam instaladas. Se houver um módulo existente com o mesmo nome e versão, o Force substituirá essa versão. Force e AllowClobber podem ser usados juntos em um Install-Module comando.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-InputObject

Usado para entrada de pipeline. Um erro será gerado se um valor fornecido diretamente para InputObject. Use o pipeline para passar objetos com o parâmetro InputObject .

Propriedades do parâmetro

Tipo:

PSObject[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

InputObject
Cargo:0
Obrigatório:True
Valor do pipeline:True
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-MaximumVersion

Especifica a versão máxima de um único módulo a ser instalado. A versão instalada deve ser menor ou igual a MaximumVersion. Se você quiser instalar vários módulos, não poderá usar MaximumVersion. MaximumVersion e RequiredVersion não podem ser usados no mesmo Install-Module comando.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

NameParameterSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-MinimumVersion

Especifica a versão mínima de um único módulo a ser instalado. A versão instalada deve ser maior ou igual a MinimumVersion. Se houver uma versão mais recente do módulo disponível, a versão mais recente será instalada. Se você quiser instalar vários módulos, não poderá usar MinimumVersion. MinimumVersion e RequiredVersion não podem ser usados no mesmo Install-Module comando.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

NameParameterSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Name

Especifica os nomes exatos dos módulos a serem instalados na galeria online. Uma lista separada por vírgulas de nomes de módulo é aceita. O nome do módulo deve corresponder ao nome do módulo no repositório. Use Find-Module para obter uma lista de nomes de módulo.

Propriedades do parâmetro

Tipo:

String[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

NameParameterSet
Cargo:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-PassThru

O Install-Module cmdlet obtém um ou mais módulos que atendem aos critérios especificados de um repositório online. O cmdlet verifica se os resultados da pesquisa são módulos válidos e copia as pastas do módulo para o local de instalação. Os módulos instalados não são importados automaticamente após a instalação. Você pode filtrar qual módulo está instalado com base nas versões mínima, máxima e exata dos módulos especificados.

Se o módulo que está sendo instalado tiver o mesmo nome ou versão ou contiver comandos em um módulo existente, as mensagens de aviso serão exibidas. Depois de confirmar que deseja instalar o módulo e substituir os avisos, use os parâmetros e -Force os -AllowClobber parâmetros. Dependendo das configurações do repositório, talvez seja necessário responder a um prompt para que a instalação do módulo continue.

Esses exemplos usam a Galeria do PowerShell como o único repositório registrado. Get-PSRepository exibe os repositórios registrados. Se você tiver vários repositórios registrados, use o -Repository parâmetro para especificar o nome do repositório.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Proxy

Especifica um servidor proxy para a solicitação, em vez de se conectar diretamente ao recurso da Internet.

Propriedades do parâmetro

Tipo:Uri
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-ProxyCredential

Especifica uma conta de usuário que tem permissão para usar o servidor proxy especificado pelo parâmetro Proxy .

Propriedades do parâmetro

Tipo:PSCredential
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Repository

Use o parâmetro Repository para especificar qual repositório é usado para fazer download e instalar um módulo. Usado quando vários repositórios são registrados. Especifica o nome de um repositório registrado no Install-Module comando. Para registrar um repositório, use Register-PSRepository. Para exibir repositórios registrados, use Get-PSRepository.

Propriedades do parâmetro

Tipo:

String[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

NameParameterSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-RequiredVersion

Especifica a versão exata de um único módulo a ser instalado. Se não houver correspondência no repositório para a versão especificada, um erro será exibido. Se você quiser instalar vários módulos, não poderá usar RequiredVersion. RequiredVersion não pode ser usado no mesmo Install-Module comando que MinimumVersion ou MaximumVersion.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

NameParameterSet
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:True
Valor dos argumentos restantes:False

-Scope

Especifica o escopo de instalação do módulo. Os valores aceitáveis para esse parâmetro são AllUsers e CurrentUser.

O escopo AllUsers instala módulos em um local acessível a todos os usuários do computador:

$env:ProgramFiles\PowerShell\Modules

O CurrentUser instala módulos em um local acessível apenas ao usuário atual do computador. Por exemplo:

$home\Documents\PowerShell\Modules

Quando nenhum Escopo é definido, o padrão é definido com base na versão do PowerShellGet.

  • No PowerShellGet versões 2.0.0 e posteriores, o padrão é CurrentUser, que não requer elevação para instalação.
  • Nas versões do PowerShellGet 1.x, o padrão é AllUsers, que requer elevação para instalação.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Valores aceitos:CurrentUser, AllUsers
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-SkipPublisherCheck

Permite que você instale uma versão mais recente de um módulo que já existe em seu computador. Por exemplo, quando um módulo existente é assinado digitalmente por um editor confiável, mas a nova versão não é assinada digitalmente por um editor confiável.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-WhatIf

Mostra o que aconteceria se um Install-Module comando fosse executado. O cmdlet não é executado.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:wi

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

PSRepositoryItemInfo

Find-Module cria objetos PSRepositoryItemInfo que podem ser enviados pelo pipeline para Install-Module.

String

PSObject

String

PSCredential

Uri

Saídas

Microsoft.PowerShell.Commands.PSRepositoryItemInfo

Ao usar o parâmetro PassThru , Install-Module gera um objeto PSRepositoryItemInfo para o módulo. Essas são as mesmas informações que você obtém do Find-Module cmdlet.

Observações

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

Importante

A partir de abril de 2020, a Galeria do PowerShell não dá mais suporte ao TLS (Transport Layer Security) versões 1.0 e 1.1. Se você não estiver usando o TLS 1.2 ou superior, receberá um erro ao tentar acessar a Galeria do PowerShell. Use o seguinte comando para garantir que você esteja usando o TLS 1.2:

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

Para obter mais informações, consulte o comunicado no blog do PowerShell.

Como prática recomendada de segurança, avalie o código de um módulo antes de executar quaisquer cmdlets ou funções pela primeira vez. Para evitar a execução de módulos que contenham código mal-intencionado, os módulos instalados não são importados automaticamente após a instalação.

Se o nome do módulo especificado pelo parâmetro Name não existir no repositório, Install-Module retornará um erro.

Para instalar vários módulos, use o parâmetro Name e especifique uma matriz separada por vírgulas de nomes de módulo. Se você especificar vários nomes de módulo, não poderá usar MinimumVersion, MaximumVersion ou RequiredVersion. Find-Module cria objetos PSRepositoryItemInfo que podem ser enviados pelo pipeline para Install-Module. O pipeline é outra maneira de especificar vários módulos a serem instalados em um único comando.

Por padrão, os módulos para o escopo de AllUsers são instalados em $env:ProgramFiles\PowerShell\Modules. O padrão evita confusão ao instalar recursos de DSC (Configuração de Estado Desejado) do PowerShell.

A instalação de um módulo falha e não pode ser importada se não tiver um .psm1, .psd1, ou .dll com o mesmo nome dentro da pasta. Use o parâmetro Force para instalar o módulo.

Se a versão de um módulo existente corresponder ao nome especificado pelo parâmetro Name e o parâmetro MinimumVersion ou RequiredVersion não for usado, Install-Module continuará silenciosamente, mas não instalará o módulo.

Se a versão de um módulo existente for maior que o valor do parâmetro MinimumVersion ou igual ao valor do parâmetro RequiredVersion , continuará silenciosamente, Install-Module mas não instalará o módulo.

Se o módulo existente não corresponder aos valores especificados pelos parâmetros MinimumVersion ou RequiredVersion , ocorrerá um erro no Install-Module comando. Por exemplo, se a versão do módulo instalado existente for menor que o valor MinimumVersion ou não for igual ao valor RequiredVersion .

Uma instalação de módulo também instalará todos os módulos dependentes especificados conforme exigido pelo editor do módulo. O editor especificará os módulos necessários e suas versões no manifesto do módulo.