about_Command_Syntax
Description courte
Décrit les diagrammes de syntaxe utilisés dans PowerShell.
Description longue
Les applets de commande Get-Help et Get-Command affichent des diagrammes de syntaxe pour vous aider à construire correctement des commandes. Cet article explique comment interpréter les diagrammes de syntaxe.
Obtenir la syntaxe d’une commande
Il existe deux façons d’obtenir la syntaxe d’une commande : Get-Help
et Get-Command
.
Get-Command
La Get-Command
commande peut être utilisée pour obtenir des informations sur n’importe quelle commande sur votre système. Utilisez le paramètre Syntax pour obtenir la syntaxe d’une commande.
Get-Command Get-Command -Syntax
Get-Command [[-ArgumentList] <Object[]>] [-Verb <string[]>] [-Noun <string[]>]
[-Module <string[]>] [-FullyQualifiedModule <ModuleSpecification[]>]
[-TotalCount <int>] [-Syntax] [-ShowCommandInfo] [-All] [-ListImported]
[-ParameterName <string[]>] [-ParameterType <PSTypeName[]>]
[<CommonParameters>]
Get-Command [[-Name] <string[]>] [[-ArgumentList] <Object[]>]
[-Module <string[]>] [-FullyQualifiedModule <ModuleSpecification[]>]
[-CommandType <CommandTypes>] [-TotalCount <int>] [-Syntax] [-ShowCommandInfo]
[-All] [-ListImported] [-ParameterName <string[]>]
[-ParameterType <PSTypeName[]>] [-UseFuzzyMatching]
[-FuzzyMinimumDistance <uint>] [-UseAbbreviationExpansion]
[<CommonParameters>]
Get-Help
La Get-Help
commande fournit des informations détaillées sur les commandes PowerShell, notamment la syntaxe, la description détaillée de l’applet de commande et des paramètres et des exemples. La commande de sortie Get-Help
commence par une brève description de la commande suivie de la syntaxe.
Get-Help Get-Command
La sortie suivante a été raccourcie pour se concentrer sur la description de la syntaxe.
NAME
Get-Command
SYNOPSIS
Gets all commands.
SYNTAX
Get-Command [[-Name] <System.String[]>] [[-ArgumentList] <System.Object[]>]
[-All] [-CommandType {Alias | Function | Filter | Cmdlet | ExternalScript |
Application | Script | Workflow | Configuration | All}]
[-FullyQualifiedModule <Microsoft.PowerShell.Commands.ModuleSpecification[]>]
[-ListImported] [-Module <System.String[]>] [-ParameterName <System.String[]>]
[-ParameterType <System.Management.Automation.PSTypeName[]>]
[-ShowCommandInfo] [-Syntax] [-TotalCount <System.Int32>]
[-UseAbbreviationExpansion] [-UseFuzzyMatching] [<CommonParameters>]
Get-Command [[-ArgumentList] <System.Object[]>] [-All]
[-FullyQualifiedModule <Microsoft.PowerShell.Commands.ModuleSpecification[]>]
[-ListImported] [-Module <System.String[]>] [-Noun <System.String[]>]
[-ParameterName <System.String[]>]
[-ParameterType <System.Management.Automation.PSTypeName[]>]
[-ShowCommandInfo] [-Syntax] [-TotalCount <System.Int32>]
[-Verb <System.String[]>] [<CommonParameters>]
...
La sortie de Get-Help
est légèrement différente de la sortie de Get-Command
. Notez la différence dans la syntaxe du paramètre CommandType . Get-Command
affiche le type de paramètre comme [CommandTypes]
énumération, tandis qu’il Get-Help
affiche les valeurs possibles pour l’énumération.
Ensembles de paramètres
Les paramètres d’une commande PowerShell sont répertoriés dans les jeux de paramètres. Une commande PowerShell peut avoir un ou plusieurs jeux de paramètres. L’applet Get-Command
de commande a deux jeux de paramètres, comme indiqué dans les exemples précédents.
Certains paramètres de l’applet de commande sont uniques à un jeu de paramètres, et d’autres apparaissent dans plusieurs jeux de paramètres. Chaque jeu de paramètres représente le format d’une commande valide. Un jeu de paramètres inclut uniquement les paramètres qui peuvent être utilisés ensemble dans une commande. Lorsque les paramètres ne peuvent pas être utilisés dans la même commande, ils sont répertoriés dans des jeux de paramètres distincts.
Par exemple, l’applet de commande Get-Random a les jeux de paramètres suivants :
$cmd = Get-Command Get-Random
$cmd.ParameterSets |
Select-Object Name, IsDefault, @{n='Parameters';e={$_.ToString()}} |
Format-Table -Wrap
Name IsDefault Parameters
---- --------- ----------
RandomNumberParameterSet True [[-Maximum] <Object>] [-SetSeed <int>]
[-Minimum <Object>] [-Count <int>]
[<CommonParameters>]
RandomListItemParameterSet False [-InputObject] <Object[]> [-SetSeed <int>]
[-Count <int>] [<CommonParameters>]
ShuffleParameterSet False [-InputObject] <Object[]> -Shuffle
[-SetSeed <int>] [<CommonParameters>]
- Le premier jeu de paramètres retourne un ou plusieurs nombres aléatoires et a les paramètres Minimum, Maximum et Count .
- Le deuxième jeu de paramètres retourne un objet sélectionné de manière aléatoire à partir d’un ensemble d’objets et inclut les paramètres InputObject et Count .
- Le troisième jeu de paramètres a le paramètre Shuffle qui retourne une collection d’objets dans un ordre aléatoire, comme la combinaison d’un jeu de cartes.
- Tous les jeux de paramètres ont le paramètre SetSeed et les paramètres communs.
Ces jeux de paramètres montrent que vous pouvez utiliser les paramètres InputObject et Count dans la même commande, mais vous ne pouvez pas utiliser les paramètres Maximum et Shuffle ensemble.
Chaque applet de commande a également un jeu de paramètres par défaut. Le jeu de paramètres par défaut est utilisé lorsque vous ne spécifiez pas de paramètres uniques à un jeu de paramètres. Par exemple, si vous utilisez Get-Random
sans paramètres, PowerShell suppose que vous utilisez le jeu de paramètres RandomNumberParameterSet et qu’il retourne un nombre aléatoire.
Symboles dans les diagrammes de syntaxe
Le diagramme de syntaxe répertorie le nom de la commande, les paramètres de commande et les valeurs des paramètres.
Les diagrammes de syntaxe utilisent les symboles suivants :
Un trait
-
d’union indique un nom de paramètre. Dans une commande, tapez le trait d’union immédiatement avant le nom du paramètre sans espaces intermédiaires, comme indiqué dans le diagramme de syntaxe.Par exemple, pour utiliser le paramètre Name de
Get-Command
, type :Get-Command -Name
.
Les crochets
< >
d’angle indiquent le texte de l’espace réservé. Vous ne tapez pas les crochets d’angle ou le texte de l’espace réservé dans une commande. Au lieu de cela, vous le remplacez par l’élément qu’il décrit.L’espace réservé à l’intérieur des crochets angle identifie le type .NET de la valeur qu’un paramètre prend. Par exemple, pour utiliser le paramètre Name de l’applet
Get-Command
de commande, vous remplacez le<string[]>
par une ou plusieurs chaînes séparées par des virgules (,
).
Les crochets ajoutés
[]
à un type .NET indiquent que le paramètre peut accepter une ou plusieurs valeurs de ce type. Entrez les valeurs sous la forme d’une liste séparée par des virgules.Par exemple, les paramètres Nom et Valeur de l’applet
New-Alias
de commande ne prennent qu’une seule chaîne.New-Alias [-Name] <string> [-Value] <string>
New-Alias -Name MyAlias -Value mycommand.exe
Toutefois, le paramètre Name de Get-Process peut prendre une ou plusieurs chaînes.
Get-Process [-Name] <string[]>
Get-Process -Name Explorer, Winlogon, Services
Paramètres sans valeurs
Certains paramètres n’acceptent pas d’entrée, de sorte qu’ils n’ont pas de valeur de paramètre. Les paramètres sans valeurs sont des paramètres de commutateur. Les paramètres de commutateur sont utilisés comme des valeurs booléennes. Ils ont la valeur par défaut
$false
. Lorsque vous utilisez un paramètre switch, la valeur est définie sur$true
.Par exemple, le paramètre ListImported d’est
Get-Command
un paramètre switch. Lorsque vous utilisez le paramètre ListImported , l’applet de commande retourne uniquement les commandes qui ont été importées à partir de modules dans la session active.Get-Command [-ListImported]
Les crochets autour des paramètres indiquent des éléments facultatifs
[ ]
. Un paramètre et sa valeur peuvent être facultatifs. Par exemple, le paramètre CommandType deGet-Command
et sa valeur sont placés entre crochets, car ils sont tous deux facultatifs.Get-Command [-CommandType <CommandTypes>]
Les crochets autour du nom du paramètre, mais pas la valeur du paramètre, indiquent que le nom du paramètre est facultatif. Ces paramètres sont appelés paramètres positionnels. Les valeurs de paramètre doivent être présentées dans l’ordre correct pour que les valeurs soient liées au paramètre correct.
Par exemple, pour l’applet
New-Alias
de commande, les valeurs de paramètre Name et Value sont requises, mais les noms-Name
de paramètres et-Value
, sont facultatifs.New-Alias [-Name] <string> [-Value] <string>
New-Alias MyAlias mycommand.exe
Dans chaque jeu de paramètres, les paramètres apparaissent dans l’ordre de position. L’ordre des paramètres dans une commande est important uniquement lorsque vous omettez les noms de paramètres facultatifs. Lorsque les noms de paramètres sont omis, PowerShell affecte des valeurs aux paramètres par position et par type. Pour plus d’informations sur la position des paramètres, consultez about_Parameters.
Les accolades
{}
indiquent une « énumération », qui est un ensemble de valeurs valides pour un paramètre.Les valeurs des accolades sont séparées par des barres verticales
|
. Ces barres indiquent un choix exclusif OU , ce qui signifie que vous ne pouvez choisir qu’une seule valeur dans l’ensemble de valeurs répertoriées à l’intérieur des accolades.Par exemple, la syntaxe de l’applet
New-Alias
de commande inclut l’énumération de valeur suivante pour le paramètre Option :New-Alias -Option {None | ReadOnly | Constant | Private | AllScope}
Les accolades et barres verticales indiquent que vous pouvez choisir l’une des valeurs répertoriées pour le paramètre Option , comme
ReadOnly
ouAllScope
.New-Alias -Option ReadOnly