Find-Command
Busca comandos de PowerShell en módulos.
Syntax
Find-Command
[[-Name] <String[]>]
[-ModuleName <String>]
[-MinimumVersion <String>]
[-MaximumVersion <String>]
[-RequiredVersion <String>]
[-AllVersions]
[-AllowPrerelease]
[-Tag <String[]>]
[-Filter <String>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-Repository <String[]>]
[<CommonParameters>]
Description
El Find-Command
cmdlet busca comandos de PowerShell, como cmdlets, alias, funciones y flujos de trabajo. Find-Command
busca módulos en repositorios registrados.
Para cada comando encontrado por Find-Command
, se devuelve un objeto PSGetCommandInfo . El objeto PSGetCommandInfo se puede enviar a la canalización al Install-Module
cmdlet .
Install-Module
instala el módulo que contiene el comando .
Ejemplos
Ejemplo 1: Buscar todos los comandos en un repositorio especificado
El Find-Command
cmdlet busca módulos en un repositorio registrado.
Find-Command -Repository PSGallery | Select-Object -First 10
Name Version ModuleName Repository
---- ------- ---------- ----------
Disable-AzureRmDataCollection 5.8.3 AzureRM.profile PSGallery
Disable-AzureRmContextAutosave 5.8.3 AzureRM.profile PSGallery
Enable-AzureRmDataCollection 5.8.3 AzureRM.profile PSGallery
Enable-AzureRmContextAutosave 5.8.3 AzureRM.profile PSGallery
Remove-AzureRmEnvironment 5.8.3 AzureRM.profile PSGallery
Get-AzureRmEnvironment 5.8.3 AzureRM.profile PSGallery
Set-AzureRmEnvironment 5.8.3 AzureRM.profile PSGallery
Add-AzureRmEnvironment 5.8.3 AzureRM.profile PSGallery
Get-AzureRmSubscription 5.8.3 AzureRM.profile PSGallery
Connect-AzureRmAccount 5.8.3 AzureRM.profile PSGallery
Find-Command
usa el parámetro Repository para especificar el nombre de un repositorio registrado. Los objetos se envían a la canalización. Select-Object
recibe los objetos y usa el parámetro First para mostrar los primeros 10 resultados.
Ejemplo 2: Buscar un comando por nombre
Find-Command
puede usar el nombre de un comando para buscar el módulo en un repositorio. Es posible que exista un nombre de comando en varios ModuleNames.
Find-Command -Repository PSGallery -Name Get-TargetResource
Name Version ModuleName Repository
---- ------- ---------- ----------
Get-TargetResource 3.1.0.0 xPowerShellExecutionPolicy PSGallery
Get-TargetResource 1.0.0 xInternetExplorerHomePage PSGallery
Get-TargetResource 1.2.0.0 SystemLocaleDsc PSGallery
Find-Command
usa el parámetro Repository para buscar en PSGallery. El parámetro Name especifica el comando Get-TargetResource
.
Ejemplo 3: Búsqueda de comandos por nombre e instalación del módulo
Find-Command
puede buscar el comando y el módulo y, a continuación, enviar el objeto a Install-Module
. Si un comando se incluye en varios módulos, use el parámetro ModuleName de cmdletsFind-Command
.
De lo contrario, es posible que los módulos se instalen que no desea instalar.
PS> Find-Command -Name Get-TargetResource -Repository PSGallery -ModuleName SystemLocaleDsc |
Install-Module
PS> Get-InstalledModule
Version Name Repository Description
------- ---- ---------- -----------
1.2.0.0 SystemLocaleDsc PSGallery This DSC Resource allows configuration of the Windows...
Find-Command
usa el parámetro Name para especificar el comando Get-TargetResource
. El parámetro Repository busca en PSGallery. El parámetro ModuleName especifica el módulo que desea instalar, SystemLocaleDsc. El objeto se envía a la canalización a Install-Module
y se instala el módulo. Una vez finalizada la instalación, puede usar Get-InstalledModule
para mostrar los resultados.
Ejemplo 4: Buscar un comando y guardar su módulo
PS> Find-Command -Name Invoke-ScriptAnalyzer -Repository PSGallery | Save-Module -Path C:\Test\Modules -Verbose
VERBOSE: Downloading 'https://www.powershellgallery.com/api/v2/package/PSScriptAnalyzer/1.18.0'.
VERBOSE: Completed downloading 'https://www.powershellgallery.com/api/v2/package/PSScriptAnalyzer/1.18.0'.
VERBOSE: Completed downloading 'PSScriptAnalyzer'.
VERBOSE: Module 'PSScriptAnalyzer' was saved successfully to path 'C:\Test\Modules\PSScriptAnalyzer\1.18.0'.
Find-Command
usa los parámetros Name y Repository para buscar el comando Invoke-ScriptAnalyzer
en el repositorio PSGallery . El objeto se envía por la canalización a Save-Module
. El parámetro Path determina la ubicación para guardar el módulo. Verbose es un parámetro opcional, pero muestra la salida de estado en la consola de PowerShell. La salida detallada es beneficiosa para solucionar problemas.
Parámetros
-AllowPrerelease
Incluye módulos marcados como una versión preliminar en los resultados.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllVersions
Indica que este cmdlet obtiene todas las versiones de un módulo.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Filter
Busca módulos basados en la sintaxis de búsqueda del proveedor PackageManagement . Por ejemplo, especifique las palabras que se van a buscar en las propiedades ModuleName y Description .
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumVersion
Especifica la versión máxima del módulo que se va a incluir en los resultados. Los parámetros MaximumVersion y RequiredVersion no se pueden usar en el mismo comando.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MinimumVersion
Especifica la versión mínima del módulo que se va a incluir en los resultados. Los parámetros MinimumVersion y RequiredVersion no se pueden usar en el mismo comando.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModuleName
Especifica el nombre de un módulo para buscar comandos. El valor predeterminado es todos los módulos.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Especifica el nombre del comando que se va a buscar en un repositorio. Use comas para separar una matriz de nombres de comando.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Proxy
Especifica un servidor proxy para la solicitud, en lugar de una conexión directa al recurso de Internet.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProxyCredential
Especifica una cuenta de usuario que tiene permiso para usar el servidor proxy especificado por el parámetro Proxy.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Repository
Especifica el repositorio que se va a buscar comandos. Use comas para separar una matriz de nombres de repositorio. El valor predeterminado es todos los repositorios.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
Especifica la versión del módulo que se va a incluir en los resultados.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tag
Especifica etiquetas que clasifican módulos en un repositorio. Use comas para separar una matriz de etiquetas.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Salidas
PSGetCommandInfo
Find-Command
genera un objeto PSGetCommandInfo .
Notas
Importante
A partir de abril de 2020, Galería de PowerShell ya no es compatible con las versiones 1.0 y 1.1 de Seguridad de la capa de transporte (TLS). Si no usa TLS 1.2 o una versión posterior, recibirá un error al intentar obtener acceso a Galería de PowerShell. Use el siguiente comando para asegurarse de que usa TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Para más información, consulte el anuncio en el blog de PowerShell.