Get-Command (Français)

Module : Microsoft.PowerShell.Core

Get toutes les commandes.

Syntaxe

Get-Command >] >] >] >] <Object>] >] >] 
Get-Command <String>] >] >] <Object>] >] >] 

Description

Le Get-Command cmdlet obtient toutes les commandes installées sur l’ordinateur, y compris les cmdlets,alias, fonctions, filtres, scripts et applications. Get-Command obtient les commandes des modulesPowerShell et les commandes qui ont été importées d’autres sessions. Pour obtenir uniquement les commandes qui ont été importées dans la session actuelle, utilisez le paramètre ListImported.

Sans paramètres, Get-Command obtient tous les cmdlets, fonctions et alias installés sur l’ordinateur. Get-Command * obtient tous les types de commandes, y compris tous les fichiers non PowerShell dans la variable d’environnement Path ($env:Path), qu’elle répertorie dans le type de commande Application.

Get-Command qui utilise le nom exact de la commande, sans caractères génériques, importe automatiquement le module qui contient la commande afin que vous puissiez l’utiliser immédiatement. Pour activer,désactiver et configurer l’importation automatique des modules, utilisez la variable $PSModuleAutoLoadingPreferencepréférence. Pour plus d’informations, consultez la section about_Preference_Variables.

Get-Command tire ses données directement du code de la commande, contrairement à Get-Help, qui tire ses informations des rubriques d’aide.

Depuis Windows PowerShell 5.0, les résultats de la Get-Command cmdlet affichent une colonne Versionpar défaut. Une nouvelle propriété Version a été ajoutée à la classe CommandInfo.

Exemples

Exemple 1 : Obtenir les cmdlets, fonctions et alias

Cette commande obtient les cmdlets, fonctions et alias PowerShell installés sur l’ordinateur.

Get-Command

Exemple 2 : obtenir les commandes de la session actuelle

Cette commande utilise le paramètre ListImported pour obtenir uniquement les commandes de la session actuelle.

Get-Command -ListImported

Exemple 3 : Obtenir les cmdlets et les afficher dans l’ordre

Cette commande obtient tous les cmdlets, les classe par ordre alphabétique selon le nom dans le nom du cmdlet, puis les affiche dans des groupes basés sur le nom. Cet affichage peut vous aider à trouver les cmdlets pour une tâche.

Get-Command -Type Cmdlet | Sort-Object -Property Noun | Format-Table -GroupBy Noun

Exemple 4 : Obtenir les commandes dans un module

Cette commande utilise le paramètre Module pour obtenir les commandes dans les modules Microsoft.PowerShell.Securityet Microsoft.PowerShell.Utility.

Get-Command -Module Microsoft.PowerShell.Security, Microsoft.PowerShell.Utility

Exemple 5 : obtenir des informations sur un cmdlet

Cette commande obtient des informations sur le Get-AppLockerPolicy cmdlet. Elle importe également le moduleAppLocker, qui ajoute toutes les commandes du module AppLocker à la session courante.

Get-Command Get-AppLockerPolicy

Lorsqu’un module est importé automatiquement, l’effet est le même qu’en utilisant la cmdlet Import-Module.Le module peut ajouter des commandes, des types et des fichiers de formatage, et exécuter des scripts dans la session. Pour activer,désactiver et configurer l’importation automatique des modules, utilisez la variable $PSModuleAutoLoadingPreferencepréférence. Pour plus d’informations, voir about_Preference_Variables.

Exemple 6 : obtenir la syntaxe d’un cmdlet

Cette commande utilise les paramètres ArgumentList et Syntaxe pour obtenir la syntaxe du Get-ChildItemcmdlet lorsqu’il est utilisé dans le lecteur Cert :. Le lecteur Cert : est un lecteur PowerShell que le fournisseur de certificats ajoute à la session.

Get-Command -Name Get-Childitem -Args Cert: -Syntax

Lorsque vous comparez la syntaxe affichée dans la sortie avec celle qui est affichée lorsque vous omettez le paramètre Args (ArgumentList), vous verrez que le fournisseur de certificats ajoute unparamètre dynamique, CodeSigningCert, à la cmdlet Get-ChildItem.

Pour plus d’informations sur le fournisseur de certificats, voir about_Certificate_Provider.

Exemple 7 : obtenir des paramètres dynamiques

La commande de l’exemple utilise la fonction Get-DynamicParameters pour obtenir les paramètres dynamiques que le fournisseur de certificats ajoute au cmdlet Get-ChildItem lorsqu’il est utilisé dans le lecteur Cert :.

function Get-DynamicParameters{ param ($Cmdlet, $PSDrive) (Get-Command -Name $Cmdlet -ArgumentList $PSDrive).ParameterSets | ForEach-Object {$_.Parameters} | Where-Object { $_.IsDynamic } | Select-Object -Property Name -Unique}Get-DynamicParameters -Cmdlet Get-ChildItem -PSDrive Cert:Name----CodeSigningCert

La fonction Get-DynamicParameters de cet exemple obtient les paramètres dynamiques d’un cmdlet. C’est une alternative à la méthode utilisée dans l’exemple précédent. Le paramètre dynamique peut être ajouté à une cmdlet par une autre cmdlet ou un fournisseur.

Exemple 8 : Obtenir toutes les commandes de tous types

Cette commande obtient toutes les commandes de tous types sur l’ordinateur local, y compris les fichiers exécutables dans les chemins de la variable d’environnement Path ($env:path).

Get-Command *

Elle renvoie un objet ApplicationInfo (System.Management.Automation.ApplicationInfo) pour chaque fichier, et non un objet FileInfo (System.IO.FileInfo).

Exemple 9 : Obtenir des cmdlets en utilisant un nom et un type de paramètre

Cette commande obtient les cmdlets qui ont un paramètre dont le nom comprend Auth et dont le type estAuthenticationMechanism.

Get-Command -ParameterName *Auth* -ParameterType AuthenticationMechanism

Vous pouvez utiliser une commande comme celle-ci pour trouver les cmdlets qui vous permettent de spécifier la méthode utilisée pour authentifier l’utilisateur.

Le paramètre ParameterType distingue les paramètres qui prennent une valeur AuthenticationMechanism de ceux qui prennent un paramètre AuthenticationLevel, même s’ils ont des noms similaires.

Exemple 10 : obtenir un alias

Cet exemple montre comment utiliser le cmdlet Get-Command avec un alias.

Get-Command -Name dirCommandType Name ModuleName----------- ---- ----------Alias dir -> Get-ChildItem

Bien qu’elle soit généralement utilisée sur les cmdlets et les fonctions, Get-Command obtient également des scripts, des fonctions,des alias et des fichiers exécutables.

La sortie de la commande montre la vue spéciale de la valeur de la propriété Name pour les alias. La vue montre l’alias et le nom complet de la commande.

Exemple 11 : Obtenir la syntaxe d’un alias

Cet exemple montre comment obtenir la syntaxe en même temps que le nom standard d’un alias.

La sortie de la commande montre l’alias étiqueté avec le nom standard, suivi de la syntaxe.

Get-Command -Name dir -Syntaxdir (alias) -> Get-ChildItemdir <string>] <string>] >] >] >] dir <string>] -LiteralPath <string> >] >] >] 

Exemple 12 : obtenir toutes les instances de la commande Notepad

Cet exemple utilise le paramètre All du cmdlet Get-Command pour afficher toutes les instances de la commandeNotepad sur l’ordinateur local.

Get-Command Notepad -All | Format-Table CommandType, Name, DefinitionCommandType Name Definition----------- ---- ----------Application notepad.exe C:\WINDOWS\system32\notepad.exeApplication NOTEPAD.EXE C:\WINDOWS\NOTEPAD.EXE

Le paramètre All est utile lorsqu’il y a plus d’une commande avec le même nom dans la session.

Depuis Windows PowerShell 3.0, par défaut, lorsque la session comprend plusieurs commandes avec le même nom, Get-Command obtient uniquement la commande qui s’exécute lorsque vous tapez le nom de la commande. Avec le paramètre All, Get-Command obtient toutes les commandes portant le nom spécifié et les renvoie dans l’ordre de priorité d’exécution. Pour exécuter une commande autre que la première de la liste, tapez le chemin d’accès entièrement qualifié de la commande.

Pour plus d’informations sur la préséance des commandes, voir about_Command_Precedence.

Exemple 13 : obtenir le nom d’un module qui contient un cmdlet

Cette commande obtient le nom du module dans lequel le Get-Date cmdlet a pris naissance.La commande utilise la propriété ModuleName de toutes les commandes.

(Get-Command Get-Date).ModuleNameMicrosoft.PowerShell.Utility

Ce format de commande fonctionne sur les commandes des modules PowerShell, même si elles ne sont pas importées dans la session.

Exemple 14 : Obtenir les cmdlets et les fonctions qui ont un type de sortie

Get-Command -Type Cmdlet | Where-Object OutputType | Format-List -Property Name, OutputType

Cette commande obtient les cmdlets et les fonctions qui ont un type de sortie et le type d’objets qu’ils retournent.

La première partie de la commande obtient tous les cmdlets. Un opérateur de pipeline (|) envoie les cmdlets à la cmdletWhere-Object, qui ne sélectionne que ceux dans lesquels la propriété OutputType estpopulée. Un autre opérateur de pipeline envoie les objets cmdlet sélectionnés au cmdlet Format-List,qui affiche le nom et le type de sortie de chaque cmdlet dans une liste.

La propriété OutputType d’un objet CommandInfo a une valeur non nulle uniquement lorsque le cmdletcode définit l’attribut OutputType pour le cmdlet.

Exemple 15 : Obtenir les cmdlets qui prennent un type d’objet spécifique en entrée

Get-Command -ParameterType (((Get-NetAdapter)).PSTypeNames)CommandType Name ModuleName----------- ---- ----------Function Disable-NetAdapter NetAdapterFunction Enable-NetAdapter NetAdapterFunction Rename-NetAdapter NetAdapterFunction Restart-NetAdapter NetAdapterFunction Set-NetAdapter NetAdapter

Cette commande trouve les cmdlets qui prennent des objets d’adaptateur réseau en entrée. Vous pouvez utiliser ce format de commande pour trouver les cmdlets qui acceptent le type d’objets que toute commande renvoie.

La commande utilise la propriété intrinsèque PSTypeNames de tous les objets, qui obtient les types qui décrivent l’objet. Pour obtenir la propriété PSTypeNames d’un adaptateur de réseau, et non la propriétéPSTypeNames d’une collection d’adaptateurs de réseau, la commande utilise la notation de tableau pour obtenir lepremier adaptateur de réseau que le cmdlet renvoie.

Exemple 16 : Obtenir des commandes à l’aide d’une correspondance floue

Dans cet exemple, le nom de la commande comporte délibérément une faute de frappe sous la forme ‘get-commnd’.À l’aide du commutateur -UseFuzzyMatching, le cmdlet a déterminé que la meilleure correspondance était Get-Command suivie d’autres commandes natives du système qui présentaient une correspondance similaire.

Get-Command get-commnd -UseFuzzyMatchingCommandType Name Version Source----------- ---- ------- ------Cmdlet Get-Command 6.2.0.0 Microsoft.PowerShell.CoreApplication getconf 0.0.0.0 /usr/bin/getconfApplication command 0.0.0.0 /usr/bin/command

Paramètres

-Tout
Indique que ce cmdlet obtient toutes les commandes, y compris les commandes du même type qui ont le même nom. Par défaut, Get-Command obtient uniquement les commandes qui s’exécutent lorsque vous tapez le nom de la commande.

Pour plus d’informations sur la méthode que PowerShell utilise pour sélectionner la commande à exécuter lorsque plusieurs commandes portent le même nom, consultez about_Command_Precedence.Pour plus d’informations sur les noms de commande qualifiés de module et sur l’exécution de commandes qui ne s’exécutent pas par défaut en raison d’un conflit de noms, voir about_Modules.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Dans Windows PowerShell 2.0, Get-Command obtient toutes les commandes par défaut.

Type: SwitchParameter
Position : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : True Acceptation des caractères génériques: False
-ArgumentList

Spécifie un tableau d’arguments. Ce cmdlet obtient des informations sur un cmdlet ou une fonction lorsqu’il est utilisé avec les paramètres (« arguments ») spécifiés. L’alias pour ArgumentList est Args.

Pour détecter les paramètres dynamiques qui ne sont disponibles que lorsque certains autres paramètres sont utilisés, définissez la valeur d’ArgumentList sur les paramètres qui déclenchent les paramètres dynamiques.

Pour détecter les paramètres dynamiques qu’un fournisseur ajoute à un cmdlet, définissez la valeur du paramètreArgumentList sur un chemin d’accès dans le lecteur du fournisseur, tel que WSMan :, HKLM : ou Cert :. Lorsque la commande est une cmdlet de fournisseur PowerShell, ne saisissez qu’un seul chemin dans chaque commande. Les cmdlets du fournisseur ne renvoient que les paramètres dynamiques du premier chemin, la valeur de ArgumentList. Pour obtenir des informations sur les cmdlets de fournisseur, consultez la section about_Providers.

Type: Objet
Alias: Args
Position : 1
Valeur par défaut : None
Acceptation des entrées du pipeline : False Acceptation des caractères génériques : False
-CommandType

Spécifie les types de commandes que cette cmdlet obtient. Saisissez un ou plusieurs types de commandes. UtilisezCommandType ou son alias, Type. Par défaut, Get-Command obtient toutes les cmdlets, fonctions et alias.

Les valeurs acceptables pour ce paramètre sont :

  • Alias. Obtient les alias de toutes les commandes PowerShell. Pour plus d’informations, voir about_Aliases.
  • Tout. Obtient tous les types de commandes. Cette valeur de paramètre est l’équivalent de Get-Command *.
  • Application. Obtient les fichiers non-PowerShell dans les chemins répertoriés dans la variable d’environnement Path ($env:path), notamment les fichiers .txt, .exe et .dll. Pour plus d’informations sur la variable d’environnementPath, voir about_Environment_Variables.
  • Cmdlet. Obtient tous les cmdlets.
  • ExternalScript. Obtient tous les fichiers .ps1 dans les chemins répertoriés dans la variable d’environnement Path($env:path).
  • Filtre et fonction. Obtient toutes les fonctions et tous les filtres PowerShell avancés et simples.
  • Scripts. Obtient tous les blocs de script. Pour obtenir les scripts PowerShell (fichiers .ps1), utilisez la valeur ExternalScript.
Type: CommandTypes
Aliases: Type
Valeurs acceptées : Alias, Fonction, Filtre, Cmdlet, ExternalScript, Application, Script, Workflow, Configuration, Tous
Position: Nommé Valeur par défaut : None
Acceptation de l’entrée pipeline: True
Acceptation des caractères génériques : False

-FullyQualifiedModule

Spécifie les modules dont les noms sont spécifiés sous la forme d’objets ModuleSpecification,décrits dans la section Remarques du Constructeur de moduleSpecification (Hashtable).Par exemple, le paramètre FullyQualifiedModule accepte un nom de module spécifié dans l’un des formats suivants :

  • @{ModuleName = "modulename"; ModuleVersion = "version_number"}
  • @{ModuleName = "modulename"; ModuleVersion = "version_number"; Guid = "GUID"}

ModuleName et ModuleVersion sont obligatoires, mais Guid est facultatif.

Vous ne pouvez pas spécifier le paramètre FullyQualifiedModule dans la même commande qu’un paramètre Moduleparameter. Les deux paramètres s’excluent mutuellement.

Type: ModuleParamètre
Position : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : True Acceptation des caractères génériques : False
-ListImported

Indique que cette cmdlet obtient uniquement les commandes de la session actuelle.

Dès PowerShell 3.0, par défaut, Get-Command obtient toutes les commandes installées,y compris, mais sans s’y limiter, les commandes de la session actuelle. Dans PowerShell 2.0, il obtient uniquement les commandes de la session actuelle.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type: SwitchParameter
Position : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : True Acceptation des caractères génériques: False
-Module

Spécifie un tableau de modules. Ce cmdlet obtient les commandes provenant des modules spécifiés.Saisissez les noms des modules ou des objets de module.

Ce paramètre prend des valeurs de type chaîne, mais la valeur de ce paramètre peut également être un PSModuleInfoobject, comme les objets que les cmdlets Get-Module et Import-PSSession renvoient.

Type: Chaîne
Alias: PSSnapin
Position: Nommé
Valeur par défaut : None
Acceptation de l’entrée pipeline : True
Acceptation des caractères génériques : True
-Nom

Spécifie un tableau de noms. Cette cmdlet obtient uniquement les commandes qui ont le nom spécifié. Saisissez un nom ou un motif de nom. Les caractères génériques sont autorisés.

Pour obtenir les commandes qui ont le même nom, utilisez le paramètre All. Lorsque deux commandes ont le même nom, par défaut, Get-Command obtient la commande qui s’exécute lorsque vous tapez le nom de la commande.

Type: Chaîne
Position: 0
Valeur par défaut: None
Acceptation de l’entrée pipeline : True
Acceptation des caractères génériques : True
-Nom

Spécifie un tableau de noms de commandes. Ce cmdlet obtient les commandes, qui incluent les cmdlets, les fonctions et les alias, dont les noms incluent le nom spécifié. Saisissez un ou plusieurs noms ou modèles de noms. Les caractères génériques sont autorisés.

Type: Chaîne
Position : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : True
Acceptation des caractères génériques : True

-ParameterName

Spécifie un tableau de noms de paramètres. Ce cmdlet obtient les commandes de la session qui ont les paramètres spécifiés. Saisissez les noms de paramètres ou les alias de paramètres. Les caractères génériques sont pris en charge.

Les paramètres ParameterName et ParameterType recherchent uniquement les commandes de la session actuelle.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type: Chaîne
ParameterName : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : False Acceptation des caractères génériques: True
-ParameterType

Spécifie un tableau de noms de paramètres. Ce cmdlet obtient les commandes de la session qui ont des paramètresdu type spécifié. Saisissez le nom complet ou le nom partiel d’un type de paramètre. Les caractères génériques sont pris en charge.

Les paramètres ParameterName et ParameterType recherchent uniquement les commandes de la session actuelle.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type: PSTypeName
ParameterName : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : False Acceptation des caractères génériques : True
-ShowCommandInfo

Indique que ce cmdlet affiche des informations sur les commandes.

Ce paramètre a été introduit dans Windows PowerShell 5.0.

Type: SwitchParameter
Position : Nommé
Valeur par défaut : None
Acceptation de l’entrée pipeline : False Acceptation des caractères génériques : False
-Syntaxe

Indique que ce cmdlet obtient uniquement les données spécifiées suivantes concernant la commande :

  • Alias. Obtient le nom et la syntaxe standard.
  • Cmdlets. Obtient la syntaxe.
  • Fonctions et filtres. Obtient la définition de la fonction.
  • Scripts et applications ou fichiers. Obtient le chemin d’accès et le nom du fichier.
Type: SwitchParameter
Position : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : True Acceptation des caractères génériques : False
-TotalCount

Spécifie le nombre de commandes à obtenir. Vous pouvez utiliser ce paramètre pour limiter la sortie d’une commande.

Type: Int32
Position: Nommé
Valeur par défaut : None
Acceptation de l’entrée pipeline: True
Acceptation des caractères génériques : False
-UseAbbreviationExpansion

Indique l’utilisation de la correspondance des caractères dans la commande pour trouver avec des caractères majuscules dans une commande. Par exemple, i-psdf correspondrait à Import-PowerShellDataFile car chacun des caractères à trouver correspond à un caractère majuscule dans le résultat. Lors de l’utilisation de ce type de correspondance, tout caractère générique ne donnera lieu à aucune correspondance.

Type: SwitchParameter
Position : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : True Acceptation des caractères génériques: False
-UseFuzzyMatching

Indique l’utilisation d’un algorithme de correspondance floue lors de la recherche de commandes. L’ordre de sortie va de la correspondance la plus proche à la correspondance la moins probable. Les caractères génériques ne doivent pas être utilisés avec la correspondance floue car elle tentera de faire correspondre les commandes qui peuvent contenir ces caractères génériques.

Type: SwitchParameter
Position : Nommé
Valeur par défaut : None
Acceptation de l’entrée pipeline : False Acceptation des caractères génériques: False
-Verb

Spécifie un tableau de verbes de commande. Ce cmdlet obtient les commandes, qui incluent les cmdlets, les fonctions et les alias, dont les noms incluent le verbe spécifié. Saisissez un ou plusieurs verbes ou modèles de verbes. Les caractères génériques sont autorisés.

Type: Chaîne
Position : Nommé
Valeur par défaut : None
Acceptation des entrées du pipeline : True Acceptation des caractères génériques : True

Entrées

String

Vous pouvez acheminer des noms de commandes à cette cmdlet.

Sorties

CommandInfo

Ce cmdlet renvoie des objets dérivés de la classe CommandInfo. Le type d’objet qui estrenvoyé dépend du type de commande que Get-Command obtient.

AliasInfo

Représente les alias.

ApplicationInfo

Représente les applications et les fichiers.

CmdletInfo

Représente les cmdlets.

FunctionInfo

Représente les fonctions et les filtres.

Notes

  • Lorsque plus d’une commande portant le même nom est disponible pour la session, Get-Commandrenvoie la commande qui s’exécute lorsque vous tapez le nom de la commande. Pour obtenir les commandes portant le même nom, classées par ordre d’exécution, utilisez le paramètre All. Pour plus d’informations, voirabout_Command_Precedence.
  • Lorsqu’un module est importé automatiquement, l’effet est le même qu’en utilisant le Import-Modulecmdlet. Le module peut ajouter des commandes, des types et des fichiers de formatage, et exécuter des scripts dans la session.Pour activer, désactiver et configurer l’importation automatique des modules, utilisez la variable de préférence$PSModuleAutoLoadingPreference. Pour plus d’informations, consultez la rubriqueà propos des_Variables_de_préférence.
  • Exportation-PSSession
  • Get-Help
  • Get-Member
  • Get-PSDrive
  • Import-PSSession
  • à propos de la_Précédence_des_commandes

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *