Partilhar via


Find-Module

Localiza módulos num repositório que correspondem a critérios especificados.

Syntax

Find-Module
    [[-Name] <string[]>]
    [-MinimumVersion <string>]
    [-MaximumVersion <string>]
    [-RequiredVersion <string>]
    [-AllVersions]
    [-IncludeDependencies]
    [-Filter <string>]
    [-Tag <string[]>]
    [-Includes <string[]>]
    [-DscResource <string[]>]
    [-RoleCapability <string[]>]
    [-Command <string[]>]
    [-Proxy <uri>]
    [-ProxyCredential <pscredential>]
    [-Repository <string[]>]
    [-Credential <pscredential>]
    [-AllowPrerelease]
    [<CommonParameters>]

Description

O Find-Module cmdlet localiza módulos num repositório que correspondem aos critérios especificados. Find-Module devolve um objeto PSRepositoryItemInfo para cada módulo que encontrar. Os objetos podem ser enviados pelo pipeline para cmdlets como Install-Module.

Quando tentar utilizar um repositório pela primeira vez Find-Module , poderá ser-lhe pedido para instalar atualizações. Se a origem do repositório não estiver registada com Register-PSRepository o cmdlet, é devolvido um erro.

Find-Module devolve a versão mais recente de um módulo se não forem utilizados parâmetros que limitem a versão. Para obter a lista de versões de um módulo de um repositório, utilize o parâmetro AllVersions.

Se o parâmetro MinimumVersion for especificado, Find-Module devolve a versão do módulo igual ou superior ao mínimo. Se existir uma versão mais recente disponível no repositório, será devolvida a versão mais recente.

Se o parâmetro MaximumVersion for especificado, Find-Module devolve a versão mais recente do módulo que não excede a versão especificada.

Se o parâmetro RequiredVersion for especificado, Find-Module apenas devolve a versão do módulo que corresponde exatamente à versão especificada. Find-Module procura em todos os módulos disponíveis, porque podem ocorrer conflitos de nomes entre origens.

Os parâmetros que assumem os números da versão do módulo esperam cadeias formatadas como números de versão.

  • Os números de versão padrão têm um formato de x.y.z onde x, y e z são números
  • As versões de pré-lançamento têm um formato de x.y.z-<prerelease_label> onde a <prerelease_label> cadeia é arbitrária atribuída a essa versão.

Os exemplos seguintes utilizam o Galeria do PowerShell como o único repositório registado. Get-PSRepository apresenta os repositórios registados. Se tiver vários repositórios registados, utilize o -Repository parâmetro para especificar o nome do repositório.

Exemplos

Exemplo 1: localizar um módulo por nome

Este exemplo localiza um módulo no repositório predefinido.

Find-Module -Name PowerShellGet

Version   Name              Repository           Description
-------   ----              ----------           -----------
2.1.0     PowerShellGet     PSGallery            PowerShell module with commands for discovering...

O Find-Module cmdlet utiliza o parâmetro Name para especificar o módulo PowerShellGet .

Exemplo 2: localizar módulos com nomes semelhantes

Este exemplo utiliza o caráter universal asterisco (*) para localizar módulos com nomes semelhantes.

Find-Module -Name PowerShell*

Version   Name                            Repository    Description
-------   ----                            ----------    -----------
0.4.0     powershell-yaml                 PSGallery     Powershell module for serializing and...
2.1.0     PowerShellGet                   PSGallery     PowerShell module with commands for...
1.9       Powershell.Helper.Extension     PSGallery     # Powershell.Helper.Extension...
3.1       PowerShellHumanizer             PSGallery     PowerShell Humanizer wraps Humanizer...
4.0       PowerShellISEModule             PSGallery     a module that adds capability to the ISE

O Find-Module cmdlet utiliza o parâmetro Name com o caráter universal asterisco (*) para localizar todos os módulos que contêm o PowerShell.

Exemplo 3: localizar um módulo por versão mínima

Este exemplo procura a versão mínima de um módulo. Se o repositório contiver uma versão mais recente do módulo, será devolvida a versão mais recente.

Find-Module -Name PowerShellGet -MinimumVersion 1.6.5

Version   Name             Repository     Description
-------   ----             ----------     -----------
2.1.0     PowerShellGet    PSGallery      PowerShell module with commands for discovering...

O Find-Module cmdlet utiliza o parâmetro Name para especificar o módulo PowerShellGet . MinimumVersion especifica a versão 1.6.5. Find-Module devolve a versão 2.1.0 do PowerShellGet porque excede a versão mínima e é a versão mais atual.

Exemplo 4: localizar um módulo por versão específica

Este exemplo mostra como instalar uma versão de pré-lançamento específica de um módulo. As versões de pré-lançamento têm um formato de <version_number>-<prerelease_label>.

Find-Module PSReadLine -AllowPrerelease -RequiredVersion 2.2.4-beta1

Version        Name             Repository       Description
-------        ----             ----------       -----------
2.2.4-beta1    PSReadLine       PSGallery        Great command line editing in the PowerS…

Exemplo 5: localizar um módulo num repositório específico

Este exemplo utiliza o parâmetro Repositório para localizar um módulo num repositório específico.

Find-Module -Name PowerShellGet -Repository PSGallery

Version   Name             Repository     Description
-------   ----             ----------     -----------
2.1.0     PowerShellGet    PSGallery      PowerShell module with commands for discovering...

O Find-Module cmdlet utiliza o parâmetro Name para especificar o módulo PowerShellGet . O parâmetro Repository especifica para procurar no repositório PSGallery .

Exemplo 6: localizar um módulo em vários repositórios

Este exemplo utiliza o Register-PSRepository para especificar um repositório. Find-Module utiliza o repositório para procurar um módulo.

Register-PSRepository -Name MySource -SourceLocation https://www.myget.org/F/powershellgetdemo/
Find-Module -Name Contoso* -Repository PSGallery, MySource

Repository    Version   Name             Description
----------    -------   ----             -----------
PSGallery     2.0.0.0   ContosoServer    Cmdlets and DSC resources for managing Contoso Server...
MySource      1.2.0.0   ContosoClient    Cmdlets and DSC resources for managing Contoso Client...

O Register-PSRepository cmdlet regista um novo repositório. O parâmetro Name atribui o nome MySource. O parâmetro SourceLocation especifica o endereço do repositório.

O Find-Module cmdlet utiliza o parâmetro Name com o caráter universal asterisco (*) para especificar o módulo Contoso . O parâmetro Repository especifica para procurar dois repositórios, PSGallery e MySource.

Exemplo 7: localizar um módulo que contenha um recurso do DSC

Este comando devolve módulos que contêm recursos do DSC. O parâmetro Inclui tem quatro funcionalidades predefinidas que são utilizadas para pesquisar o repositório. Utilize a tecla tab-complete para apresentar as quatro funcionalidades suportadas pelo parâmetro Inclui .

Find-Module -Repository PSGallery -Includes DscResource

Version     Name                            Repository    Description
-------     ----                            ----------    -----------
2.7.0       Carbon                          PSGallery     Carbon is a PowerShell module...
8.5.0.0     xPSDesiredStateConfiguration    PSGallery     The xPSDesiredStateConfiguration module...
1.3.1       PackageManagement               PSGallery     PackageManagement (a.k.a. OneGet) is...
2.7.0.0     xWindowsUpdate                  PSGallery     Module with DSC Resources...
3.2.0.0     xCertificate                    PSGallery     This module includes DSC resources...
3.1.0.0     xPowerShellExecutionPolicy      PSGallery     This DSC resource can change the user...

O Find-Module cmdlet utiliza o parâmetro Repository para pesquisar o repositório PSGallery. O parâmetro Includes especifica DscResource, que é uma funcionalidade que o parâmetro pode procurar no repositório.

Exemplo 8: localizar um módulo com um filtro

Neste exemplo, para localizar módulos, é utilizado um filtro para procurar no repositório.

Para um repositório baseado em NuGet, o parâmetro Filter procura o nome, a descrição e as etiquetas do argumento.

Find-Module -Filter AppDomain

Version    Name              Repository           Description
-------    ----              ----------           -----------
1.0.0.0  AppDomainConfig     PSGallery            Manipulate AppDomain configuration...
1.1.0    ClassExplorer       PSGallery            Quickly search the AppDomain for classes...

O Find-Module cmdlet utiliza o parâmetro Filter para procurar AppDomain no repositório.

Exemplo 9: localizar um módulo por etiqueta

Este exemplo mostra como localizar módulos por uma etiqueta. O CrescendoBuilt valor é uma etiqueta que é adicionada automaticamente aos módulos criados com o módulo Microsoft.PowerShell.Crescendo .

Find-Module -Tag CrescendoBuilt

Version Name            Repository Description
------- ----            ---------- -----------
0.1.0   Foil            PSGallery  A PowerShell Crescendo wrapper for Chocolatey
0.3.1   Cobalt          PSGallery  A PowerShell Crescendo wrapper for WinGet
1.1.0   SysInternals    PSGallery  PowerShell cmdlets for SysInternal tools
0.0.4   Croze           PSGallery  A PowerShell Crescendo wrapper for Homebrew
0.0.2   AptPackage      PSGallery  PowerShell Crescendo-generated Module to query APT-Package Information
1.0.1   RoboCopy        PSGallery  PowerShell cmdlet for the official RoboCopy.exe
1.0.2   TShark          PSGallery  PowerShell cmdlet for tshark.exe
1.0.0   SpeedTestCLI    PSGallery  PowerShell cmdlets speedtest-cli
1.0.0   SpeedTest-CLI   PSGallery  PowerShell cmdlets for Internet Speed Test
1.0.2   Image2Text      PSGallery  PowerShell Images into ASCII art
0.1.1   Quser.Crescendo PSGallery  This module displays session information of users logged onto a local or remote m...
1.0.2   Takeown         PSGallery  Crescendo Powershell wrapper of takeown.exe

Parâmetros

-AllowPrerelease

Inclui nos módulos de resultados marcados como pré-lançamento.

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

-AllVersions

Especifica para incluir todas as versões de um módulo nos resultados. Não pode utilizar o parâmetro AllVersions com os parâmetrosMinimumVersion, MaximumVersion ou RequiredVersion .

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

-Command

Especifica uma matriz de comandos a localizar nos módulos. Um comando pode ser uma função ou fluxo de trabalho.

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

-Credential

Especifica uma conta de utilizador que tem direitos para instalar um módulo para um fornecedor ou origem de pacote especificado.

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

-DscResource

Especifica o nome, ou parte do nome, dos módulos que contêm recursos do DSC. De acordo com as convenções do PowerShell, efetua uma pesquisa OR quando fornece vários argumentos.

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

-Filter

Especifica um filtro com base na sintaxe de pesquisa específica do fornecedor PackageManagement . Para módulos NuGet, este parâmetro é o equivalente a procurar com a Barra de pesquisa no site do Galeria do PowerShell.

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

-IncludeDependencies

Indica que esta operação inclui todos os módulos dependentes do módulo especificado no parâmetro Nome .

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

-Includes

Devolve apenas os módulos que incluem tipos específicos de funcionalidade do PowerShell. Por exemplo, poderá apenas querer encontrar módulos que incluam DSCResource. Os valores aceitáveis para este parâmetro são os seguintes:

  • Cmdlet
  • DscResource
  • Função
  • RoleCapability
Type:String[]
Accepted values:DscResource, Cmdlet, Function, RoleCapability
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaximumVersion

Especifica a versão máxima ou mais recente do módulo a incluir nos resultados da pesquisa. Não é possível utilizar MaximumVersion e RequiredVersion no mesmo comando.

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

-MinimumVersion

Especifica a versão mínima do módulo a incluir nos resultados. MinimumVersion e RequiredVersion não podem ser utilizados no mesmo comando.

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

-Name

Especifica os nomes dos módulos a procurar no repositório. É aceite uma lista separada por vírgulas de nomes de módulos. Os carateres universais são aceites.

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

-Proxy

Especifica um servidor proxy para o pedido, em vez de ligar diretamente ao recurso da Internet.

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

-ProxyCredential

Especifica uma conta de utilizador que tem permissão para utilizar o servidor proxy especificado pelo parâmetro Proxy .

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

-Repository

Utilize o parâmetro Repositório para especificar o repositório para procurar um módulo. Utilizado quando são registados vários repositórios. Aceita uma lista separada por vírgulas de repositórios. Para registar um repositório, utilize Register-PSRepository. Para apresentar repositórios registados, utilize Get-PSRepository.

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

-RequiredVersion

Especifica o número exato da versão do módulo a incluir nos resultados. RequiredVersion não pode ser utilizado no mesmo comando que MinimumVersion ou MaximumVersion.

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

-RoleCapability

Especifica uma matriz de capacidades de função.

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

-Tag

Especifica uma matriz de etiquetas. As etiquetas de exemplo incluem DesiredStateConfiguration, DSC, DSCResourceKit ou PSModule.

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

Entradas

String[]

String

Uri

PSCredential

Saídas

PSRepositoryItemInfo

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

Notas

O PowerShell inclui os seguintes aliases para Find-Module:

  • Todas as plataformas:
    • fimo

Importante

A partir de abril de 2020, o Galeria do PowerShell já não suporta as versões 1.0 e 1.1 do Transport Layer Security (TLS). Se não estiver a utilizar o TLS 1.2 ou superior, receberá um erro ao tentar aceder ao Galeria do PowerShell. Utilize o seguinte comando para garantir que está a utilizar o TLS 1.2:

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

Para obter mais informações, veja o anúncio no blogue do PowerShell.