Les opérateurs
Qu’est-ce qu’un opérateur ?
Un opérateur est un élément permettant de manipuler des valeurs afin de les évaluer, de les comparer ou encore de les calculer.
L’opérateur se présente sous la forme d’un signe ou d’une succession de lettres qui nous permettront de manipuler des chiffres, de faire des comparaisons de listes de mots, de tester si une liste contient certains éléments… Il s’agit d’une notion à correctement comprendre et maîtriser afin de pouvoir développer des scripts performants.
Les opérateurs se divisent en deux familles : celle des opérateurs mathématiques et celle qui concerne les chaînes de caractères.
Les opérateurs arithmétiques
Ce type d’opérateur est certainement le plus connu.
Nous les avons tous déjà utilisés au moins une fois, puisqu’il ne s’agit ni plus ni moins que des opérateurs permettant d’effectuer des opérations.
Ci-dessous la liste de ces opérateurs :
Opérateur |
Description |
+ |
Additionne des entiers Permet d’effectuer des concaténations de chaînes de caractères |
- |
Soustraie des éléments |
/ |
Divise des éléments |
* |
Multiplie des éléments |
% |
Affiche le reste d’une division |
1. L’addition
Pour effectuer une addition, il suffit de saisir notre opération dans une invite de commandes PowerShell ou dans un script.
PS C:\Users\Jerome> 6 + 2
8
L’opérateur d’addition fonctionne également sur les chaînes de caractères, mais nous parlerons alors de concaténation de chaîne de caractères.
PS C:\Users\Jerome> "Power" + "Shell"
PowerShell
2. La soustraction
Le fonctionnement de la soustraction reste similaire à celui de l’addition, à l’exception de l’opérateur utilisé.
PS C:\Users\Jerome> 6 - 2
4
3. La multiplication
Le fonctionnement de la multiplication reste similaire à celui de l’addition, à l’exception de l’opérateur...
Les opérateurs de comparaison
Les opérateurs de comparaison nous permettent de comparer plusieurs éléments.
Nous avons les opérateurs dits d’égalité :
Opérateur |
Signification |
-eq |
Égal à |
-ne |
Non égal à |
-gt |
Supérieur à |
-ge |
Supérieur ou égal à |
-lt |
Inférieur à |
-le |
Inférieur ou égal à |
Mais ce ne sont pas les seuls, nous avons également ceux de correspondance :
Opérateur |
Signification |
-like |
Le mot qui précède a une correspondance. |
-notlike |
Le mot qui précède n’a pas de correspondance. |
-match |
Le mot qui précède a une correspondance avec l’expression régulière. |
-notmatch |
Le mot qui précède n’a pas de correspondance avec l’expression régulière. |
Les deux opérateurs -match et -notmach seront abordés dans le chapitre Débuter avec RegEx.
Le dernier type est un opérateur d’appartenance d’une valeur à une collection de valeurs :
Opérateur |
Signification |
-contains |
La collection contient une valeur. |
-notcontains |
La collection ne contient pas une valeur. |
-in |
La valeur se trouve dans la collection. |
-notin |
La valeur ne se trouve pas dans la collection. |
L’utilisation des opérateurs n’est, par défaut, pas sensible à la casse (ce que l’on appelle case sensitive), cela signifie que le fait de comparer des majuscules ou minuscules n’a aucun impact.
Pour que cela soit sensible à la casse, il faudra ajouter le caractère "c" juste après le tiret "-" ou, pour que cela soit insensible à la casse, le caractère "i" devant le tiret "-".
Nous obtenons ainsi le tableau suivant :
Opérateur |
Non sensible à la casse |
Sensible à la casse |
-eq |
-ieq |
-ceq |
-ne |
-ine |
-cne |
-gt |
-igt |
-cgt |
-ge |
-ige |
-cge |
-lt |
-ilt |
-clt |
-le |
-ile |
-cle |
-like |
-ilike |
-clike |
-notlike |
-inotlike |
-cnotlike |
-contains |
-icontains |
-ccontains |
-notcontains |
-inotcontains |
-cnotcontains |
Étudions maintenant tout cela au travers d’exemples.
1. Les opérateurs d’égalité
Un opérateur d’égalité permet de vérifier ou de comparer des éléments entre eux.
Cela retournera...
Les autres opérateurs
1. Le pipeline
Pour rappel, le pipe ou pipeline envoie la sortie de la commande qui le précède à la commande qui le suit.
PS C:\Users\Jerome> Get-Process | Get-Member
PS C:\Users\Jerome> Get-Service | Where-Object {$_.StartType -eq 'Automatic'}
2. L’affectation
Affecter signifie associer : affecter une valeur à un objet ou à une variable, par exemple. L’opérateur permettant de faire de l’affectation de données ou de valeurs est le signe « = ».
Dans l’exemple suivant, nous souhaitons stocker un texte dans une variable :
PS C:\Users\Jerome> $valeur = "Bonjour"
Pour afficher le contenu de cette variable, il suffira d’afficher la variable ou d’utiliser par exemple la cmdlet Write-Host.
$valeur
#ou
Write-Host $valeur
3. L’opérateur d’appel
L’opérateur d’appel nous permet d’exécuter une commande contenue dans une variable.
PS C:\Users\Jerome> $variable = "Get-Service"
PS C:\Users\Jerome> $variable
get-service
PS C:\Users\Jerome> & $variable
Status Name DisplayName
------ ---- ----------- ...