Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les articles de référence des cmdlets Exchange utilisent une méthode standardisée qui décrit les aspects clés des cmdlets. Par exemple :
- Paramètres disponibles sur l’applet de commande.
- Valeurs acceptées par chaque paramètre.
- Paramètres qui peuvent être utilisés ensemble et ceux qui doivent être utilisés séparément.
Cet article décrit ces conventions, ainsi que la syntaxe requise pour exécuter des commandes dans Exchange PowerShell.
Conventions des commandes dans Exchange PowerShell
L’aide d’Exchange PowerShell suit les conventions pour indiquer les informations requises ou facultatives, et comment entrer des paramètres et des valeurs lorsque vous exécutez une commande. Ces conventions de commande sont décrites dans la liste suivante :
-
-: un trait d’union indique un paramètre. Par exemple :-Identity. -
< >: les crochets angulaires indiquent les valeurs possibles pour un paramètre. Par exemple :-Location <ServerName>ou-Enabled <$true | $false>. -
[ ]: les crochets indiquent les paramètres facultatifs et leurs valeurs. Par exemple :[-WhatIf]ou[-ResultSize <Unlimited>].- Les paires paramètre-valeur non placées entre crochets sont requises. Par exemple :
-Password <SecureString>. - Les crochets autour du nom du paramètre lui-même indiquent un paramètre positionnel où vous pouvez utiliser la valeur du paramètre sans spécifier le nom du paramètre. Les paramètres positionnels sont obligatoires ou facultatifs. Par exemple :
-
Get-Mailbox [[-Identity] <MailboxIdParameter>]signifie que le paramètre Identity est :- Positionnelle, car le paramètre est placé entre crochets.
- Facultatif, car l’ensemble de la paire paramètre-valeur est placé entre crochets.
- Vous pouvez donc utiliser
Get-Mailbox -Identity <MailboxIdParameter>ouGet-Mailbox <MailboxIdParameter>.
-
Set-Mailbox [-Identity] <MailboxIdParameter>signifie que le paramètre Identity est :- Positionnelle, car le paramètre est placé entre crochets.
- Obligatoire, car l’ensemble de la paire paramètre-valeur n’est pas placé entre crochets.
- Vous pouvez donc utiliser
Set-Mailbox -Identity <MailboxIdParameter>ouSet-Mailbox <MailboxIdParameter>.
-
- Les paires paramètre-valeur non placées entre crochets sont requises. Par exemple :
-
|: les symboles de canal dans les valeurs de paramètre indiquent un choix entre les valeurs. Par exemple,-Enabled <$true | $false>indique que le paramètre Enabled peut avoir la valeur$trueou$false.
Ces conventions de commandes permettent de comprendre la manière dont une commande est construite. À l’exception du trait d’union qui indique un paramètre, vous n’utilisez pas ces symboles, car ils sont décrits dans le tableau lorsque vous exécutez des applets de commande dans Exchange PowerShell.
Jeux de paramètres dans Exchange PowerShell
Les jeux de paramètres sont des groupes de paramètres pouvant être utilisés ensemble dans la même commande. Chaque jeu de paramètres contient au moins un paramètre qui n’est pas disponible dans les autres jeux de paramètres, mais les jeux de paramètres partagent généralement certains paramètres.s.
De nombreuses applets de commande n’ont qu’un seul jeu de paramètres, ce qui signifie que tous les paramètres peuvent être utilisés les uns avec les autres. D’autres applets de commande ont plusieurs jeux de paramètres, ce qui signifie que certains paramètres ne peuvent pas être utilisés avec d’autres paramètres. Par exemple, supposons que les jeux de paramètres suivants sont disponibles pour la cmdlet New-SystemMessage:
New-SystemMessage -DsnCode <EnhancedStatusCode> -Internal <Boolean> -Language <CultureInfo> -Text <String> [-Confirm] [-DomainController <Fqdn>] [-WhatIf] <CommonParameters>
New-SystemMessage -QuotaMessageType <QuotaMessageType> -Language <CultureInfo> -Text <String> [-Confirm] [-DomainController <Fqdn>] [-WhatIf] <CommonParameters>
Les paramètres suivants étant disponibles dans le premier jeu de paramètres, vous pouvez les utiliser dans la même commande :
- DsnCode
- Interne
- Language
- Text
- Confirmer
- /DomainController:
- WhatIf
Les paramètres suivants étant disponibles dans le deuxième ensemble de paramètres, vous pouvez les utiliser dans la même commande :
- QuotaMessageType
- Language
- Text
- Confirmer
- /DomainController:
- WhatIf
Les paramètres DsnCode et Internal sont disponibles uniquement dans le premier ensemble de paramètres. Le paramètre QuotaMessageType est disponible uniquement dans le deuxième ensemble de paramètres. Par conséquent, vous ne pouvez pas utiliser les paramètres suivants dans la même commande :
- DsnCode et QuotaMessageType.
- Interne et QuotaMessageType.
Les paramètres suivants étant disponibles dans les deux jeux de paramètres, vous pouvez les utiliser dans n’importe quelle commande New-SystemMessage :
- Language
- Text
- Confirmer
- /DomainController:
- WhatIf
L’entrée <CommonParameters> indique que l’applet de commande prend en charge les paramètres Windows PowerShell de base disponibles sur pratiquement n’importe quelle applet de commande (par exemple, Verbose). Vous pouvez utiliser les paramètres courants avec les paramètres de n’importe quel jeu de paramètres. Pour plus d’informations, consultez about_CommonParameters.
Guillemets dans Exchange PowerShell
Dans Exchange PowerShell, vous utilisez des apostrophes (') ou des guillemets (") autour des valeurs de paramètres qui contiennent des espaces. Par exemple, les commandes suivantes ont le même comportement :
Get-ReceiveConnector -Identity "Contoso Receive Connector"Get-ReceiveConnector -Identity 'Contoso Receive Connector'
Dans les exemples précédents, si vous ne placez pas la valeur entre guillemets Contoso simples ou doubles, la commande échoue car PowerShell traite chaque mot comme un nouvel argument (il pense qu’il s’agit de la valeur du paramètre Identity et Receive de la valeur d’un paramètre positionnel non spécifié). Dans cet exemple, l’erreur ressemble à ceci :
Un paramètre de position acceptant l’argument « Recevoir » ne peut pas être trouvé.
Pour les valeurs de texte brut, les guillemets simples et les guillemets doubles n’ont pas vraiment d’importance. Toutefois, le choix est important lorsque des variables sont impliquées :
- Guillemets doubles : les variables sont remplacées par leurs valeurs réelles.
- Apostrophes : Les variables sont traitées littéralement.
Par exemple, $Server = Mailbox01 génère la sortie suivante en fonction des guillemets que vous utilisez :
-
« $Server Exemple » aboutit à
Mailbox01 Example. -
« $Server Exemple » entraîne la valeur
$Server Example.
Pour plus d’informations sur les variables, voir about_Variables et about_Automatic_Variables.
Caractères d’échappement dans Exchange PowerShell
Dans n’importe quel langage de programmation, un caractère d’échappement sert à identifier les caractères spéciaux littéralement et non selon leur fonction normale dans ce langage. Dans Exchange PowerShell, lorsque vous placez une chaîne de texte entre guillemets, le caractère d'échappement est l'accent grave ( ` ).
Par exemple, si vous souhaitez obtenir la sortie The price is $23, entrez la valeur « Le prix est de 23 $ ». Le caractère d’échappement est obligatoire, car le signe dollar ($) définit les variables dans PowerShell.
Si vous placez la chaîne entre apostrophes, le seul caractère spécial dont vous avez besoin est l’apostrophe elle-même, ce qui nécessite de la doubler pour échapper ( '' ).
Par exemple, si vous voulez l’entrée Don't confuse two single quotation marks with a double quotation mark!, entrez la valeur « Ne pas confondre les guillemets simples avec un guillemet double ! ».
Opérateurs de commande dans Exchange PowerShell
La liste suivante présente les opérateurs valides que vous pouvez utiliser dans une commande Exchange. Certains de ces symboles ont été également décrits plus haut, dans la section Conventions des commandes dans Exchange PowerShell. Toutefois, ces symboles ont des significations différentes lorsqu’ils sont utilisés comme opérateurs. Par exemple, le signe moins qui indique un paramètre peut également être utilisé comme opérateur mathématique.
=: le signe égal est un caractère d’affectation. La valeur située à droite du signe égal est affectée à la variable sur le côté gauche. Par exemple :$x = Get-Mailbox. Vous pouvez également utiliser d’autres caractères avec le signe égal :-
+=: ajoutez la valeur à droite du signe égal à la valeur actuelle dans la variable à gauche. -
-=: soustraire la valeur située à droite du signe égal du actuel dans la variable de gauche. -
*=: multipliez la valeur actuelle de la variable à gauche du signe égal par la valeur spécifiée à droite. -
/=: divise la valeur actuelle de la variable située à gauche du signe égal par la valeur spécifiée à droite. -
%=: modifiez la valeur actuelle de la variable à gauche du signe égal en fonction de la valeur spécifiée à droite.
-
:: utilisez un signe deux-points pour séparer un nom de paramètre de la valeur du paramètre. Par exemple :-Enabled:$True.- Un séparateur deux-points fonctionne et est facultatif sur pratiquement toutes les paires paramètre-valeur.
- Un séparateur deux-points est requis sur les paramètres du commutateur. Pour plus d’informations sur les paramètres de commutateur, voir about_Parameters.
!: le point d’exclamation est l’opérateur NOT logique. La paire!=combinée signifie « différent de ».[ ]: les crochets spécifient la valeur d’index d’une position de tableau. Les valeurs d’index sont des décalages qui commencent toujours à zéro. Par exemple, dans le tableau nommé$Red, la valeur de la dixième position dans le tableau est$Red[9].Les crochets peuvent également affecter un type à une variable. Par exemple, pour identifier la variable nommée
$AXML, utilisez$A=[XML] "<Test><A>value</A></Test>". Les types de variables suivants sont disponibles :Array,Bool,CharByte,Char[],Decimal,Double,Float,IntRegExLongInt[]SingleScriptBlockLong[], ,String,Type, etXML.{ }: utilisez des accolades pour inclure une expression dans une commande. Par exemple :Get-Process | Where {$_.HandleCount -gt 400}.|: utilisez le symbole de canal pour diriger la sortie d’une commande vers une autre commande. Par exemple :Get-Mailbox -Server SRV1 | Set-Mailbox -ProhibitSendQuota 2GB.>: utilisez le crochet à angle droit pour envoyer la sortie d’une commande à un fichier. Si le fichier existe déjà, le contenu est remplacé. Par exemple :Get-TransportRule > "C:\My Documents\TransportRules.txt".>>: utilisez deux crochets à angle droit pour ajouter la sortie d’une commande à un fichier existant. Si le fichier n’existe pas, il est créé. Par exemple :Get-TransportRule >> "C:\My Documents\TransportRules.txt".": utilisez des guillemets doubles pour placer des chaînes de texte contenant des espaces. Comme décrit précédemment, les variables sont remplacées par leurs valeurs réelles.$: le signe dollar indique une variable. Par exemple, pour créer une variable nommée$Blueavec la valeur 10, utilisez$Blue = 10. Après avoir stocker la variable, vous pouvez l’utiliser comme valeur de paramètre.@: le symbole at fait référence à un tableau associatif. Pour plus d’informations sur les tableaux, consultez about_Arrays.$( ): un signe dollar avec des parenthèses indique la substitution de commande. Un signe dollar ( ) entre parenthèses indique une substitution de commande. Une substitution de commande vous permet d'utiliser la sortie d'une commande comme argument dans une autre commande. Par exemple,Get-ChildItem $(Read-Host -Prompt "Enter FileName: ")...: les points doubles indiquent une plage de valeurs. Par exemple, si un tableau contient plusieurs index, vous pouvez retourner les valeurs de tous les index entre les deuxième et cinquième index en exécutant la commande :$Blue[2..5].+: l’opérateur de signe plus ajoute deux valeurs ensemble. Par exemple,6 + 6est égal à12.-: l’opérateur signe moins soustrait une valeur d’une autre valeur (par exemple,12 - 6est égal6à ) ou indique un nombre négatif (par exemple,-6 * 6est égal-36à ).*: vous pouvez utiliser un astérisque pour les tâches suivantes :-
Chaînes de correspondance : par exemple,
Get-User | Where-Object {$_.Department -like 'Sales*'}). -
Multiplier les valeurs numériques : par exemple,
6 * 6est36égal à . -
Répétez la valeur de chaîne un nombre spécifié de fois : par exemple,
"Test" * 3est égalTestTestTestà .
-
Chaînes de correspondance : par exemple,
/: une barre oblique divise une valeur par une autre. Par exemple,6 / 6est égal à1.%: le signe pourcentage a les utilisations suivantes :- Dans une évaluation numérique, il renvoie le reste d'un opérateur de division. Par exemple,
6 % 4est égal à2. - Dans un pipeline, il s’agit du raccourci pour la cmdlet ForEach-Object. Par exemple,
Import-Csv C:\MyFile.csv | ForEach-Object {Set-Mailbox $_.Identity -Name $_.Name}est identique àImport-Csv C:\MyFile.csv | % {Set-Mailbox $_.Identity -Name $_.Name}. -
?: le point d’interrogation est le raccourci de l’applet de commande Where-Object . Par exemple,Get-Alias | Where-Object {$_.Definition -eq "Clear-Host"}est identique àGet-Alias | ? {$_.Definition -eq "Clear-Host"}.|
- Dans une évaluation numérique, il renvoie le reste d'un opérateur de division. Par exemple,