Partager via


Find-Command

Recherche des commandes PowerShell dans des modules.

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

L’applet Find-Command de commande recherche les commandes PowerShell telles que les applets de commande, les alias, les fonctions et les workflows. Find-Command recherche les modules dans les référentiels inscrits.

Pour chaque commande trouvée par Find-Command, un objet PSGetCommandInfo est retourné. L’objet PSGetCommandInfo peut être envoyé vers le bas du pipeline à l’applet de Install-Module commande. Install-Module installe le module qui contient la commande .

Exemples

Exemple 1 : Rechercher toutes les commandes dans un dépôt spécifié

L’applet Find-Command de commande recherche des modules dans un référentiel inscrit.

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 utilise le paramètre Repository pour spécifier le nom d’un dépôt inscrit. Les objets sont envoyés dans le pipeline. Select-Object reçoit les objets et utilise le paramètre First pour afficher les 10 premiers résultats.

Exemple 2 : Rechercher une commande par nom

Find-Command peut utiliser le nom d’une commande pour localiser le module dans un dépôt. Il est possible qu’un nom de commande existe dans plusieurs ModulesNames.

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 utilise le paramètre Repository pour rechercher dans PSGallery. Le paramètre Name spécifie la commande Get-TargetResource.

Exemple 3 : Rechercher les commandes par nom et installer le module

Find-Command peut localiser la commande et le module, puis envoyer l’objet à Install-Module. Si une commande est incluse dans plusieurs modules, utilisez le Find-Command paramètre ModuleName des applets de commande. Sinon, des modules peuvent être installés que vous ne souhaitez pas installer.

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 utilise le paramètre Name pour spécifier la commande Get-TargetResource. Le paramètre Repository recherche dans PSGallery. Le paramètre ModuleName spécifie le module que vous souhaitez installer, SystemLocaleDsc. L’objet est envoyé vers le bas du pipeline vers Install-Module et le module est installé. Une fois l’installation terminée, vous pouvez utiliser Get-InstalledModule pour afficher les résultats.

Exemple 4 : Rechercher une commande et enregistrer son module

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 utilise les paramètres Name et Repository pour rechercher la commande Invoke-ScriptAnalyzer dans le référentiel PSGallery . L’objet est envoyé vers le bas du pipeline vers Save-Module. Le paramètre Path détermine l’emplacement d’enregistrement du module. Le détail est un paramètre facultatif, mais affiche status sortie dans la console PowerShell. La sortie détaillée est utile pour la résolution des problèmes.

Paramètres

-AllowPrerelease

Inclut des modules marqués en tant que préversion dans les résultats.

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

-AllVersions

Indique que cette applet de commande obtient toutes les versions d’un module.

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

-Filter

Recherche les modules en fonction de la syntaxe de recherche du fournisseur PackageManagement . Par exemple, spécifiez les mots à rechercher dans les propriétés ModuleName et Description .

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

-MaximumVersion

Spécifie la version maximale du module à inclure dans les résultats. Les paramètres MaximumVersion et RequiredVersion ne peuvent pas être utilisés dans la même commande.

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

-MinimumVersion

Spécifie la version minimale du module à inclure dans les résultats. Les paramètres MinimumVersion et RequiredVersion ne peuvent pas être utilisés dans la même commande.

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

-ModuleName

Spécifie le nom d’un module pour rechercher des commandes. La valeur par défaut est tous les modules.

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

-Name

Spécifie le nom de la commande à rechercher dans un référentiel. Utilisez des virgules pour séparer un tableau de noms de commandes.

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

-Proxy

Spécifie un serveur proxy pour la demande, plutôt qu’une connexion directe à la ressource Internet.

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

-ProxyCredential

Spécifie un compte d'utilisateur qui a l'autorisation d'utiliser le serveur proxy spécifié par le paramètre Proxy.

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

-Repository

Spécifie le dépôt à rechercher pour les commandes. Utilisez des virgules pour séparer un tableau de noms de référentiels. La valeur par défaut est tous les dépôts.

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

-RequiredVersion

Spécifie la version du module à inclure dans les résultats.

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

-Tag

Spécifie les balises qui catégorisent les modules dans un référentiel. Utilisez des virgules pour séparer un tableau de balises.

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

Sorties

PSGetCommandInfo

Find-Command génère un objet PSGetCommandInfo .

Notes

Important

Depuis avril 2020, PowerShell Gallery ne prend plus en charge les versions 1.0 et 1.1 de Transport Layer Security (TLS). Si vous n'utilisez pas TLS 1.2 ou une version plus récente, vous recevez une erreur lorsque vous tentez d'accéder à PowerShell Gallery. Utilisez la commande suivante pour vous assurer que vous utilisez TLS 1.2 :

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

Pour plus d’informations, consultez l’annonce sur le blog PowerShell.