Comparaison entre les variables en powershell
Comment comparer la taille de différents variables en Powershell
Pour tester si un mot est présent dans une variable.
Ci dessous on regarde si le mot 'est' est présent dans $UneVariable
Si c'est le cas, on affichera 'Trouvé'
$UneVariable = "Ceci est un test"
if ($UneVariable -like "*est*"){Write-Host "Trouvé"}
Lien vers le fichier : cliquez ici
Pour comparer 2 textes
Clear-Host
$Variable01 = "Test"
$Variable02 = "Test"
if ($Variable01.ToString() -ieq $Variable02.ToString()) {
Write-Host "Variable01 est identique à Variable02"}
else{"Variable01 est différent de Variable02"}
Lien vers le fichier : cliquez ici
Si on compare la valeur numérique de la variable :
Clear-Host
$Variable01 = 5
$Variable02 = 25
if ($Variable01 -igt 0) {Write-Host "Variable01 est plus grand que 0"}
else{"Variable01 n'est pas plus grand que 0"}
if ($Variable01 -igt $Variable02) {Write-Host "Variable01 est plus grand que Variable02"}
else{"Variable02 est plus grand que Variable01"}
Lien vers le fichier : cliquez ici
Si on compare la longueur du texte contenue dans la variable :
Clear-Host
$Variable01 = "abcd"
$Variable02 = "abcdefgh"
Write-Host "La première variable a une longueur de $($Variable01.Length)"
Write-Host "La seconde variable a une longueur de $($Variable02.Length)"
Lien vers le fichier : cliquez ici
Résultat :
Si on regarde si la variable est de longueur nulle ou non
$UneVariable = "Je met du texte dans ma variable"
if ($UneVariable.Length -igt 0) { #Si la variable n'est pas nulle, cad qu'elle a une longueur supérieure à 0
Write-host "Ma variable n'est pas vide"
}
$UneVariable = ""
if ($UneVariable.Length -eq 0) { #Si la variable est de longueur nulle, cad qu'elle ne contient pas de texte
write-host "Ma variable ne contient pas de texte"
}
Lien vers le fichier : cliquez ici
Notez que si vous voulez savoir si votre variable est inconnue ou vide, il faut regarder si elle a la valeur Null, cf
https://docs.microsoft.com/fr-fr/powershell/scripting/learn/deep-dives/everything-about-null?view=powershell-7.2
if ($mavariable-eq $null) {}
Lien vers le fichier : cliquez ici
Tableau des opérateurs
| Opérateur | Utilité |
|---|---|
| -eq | égal |
| -ne | non égal |
| -ge | plus grand que ou égal |
| -gt | plus grand que (mais pas égal) |
| -lt | plus petit que (Less than) |
| -le | plus petit que ou égal (Less than or equal) |
| -like | Comme, contient le mot |
| -notlike | Différent de, ne contient pas |
| -match | Match avec l'expression régulière type regex |
| -notmatch | Ne match pas avec l'expression régulière type regex |
| -replace | Remplace |
| -contains | Contient |
| -notcontains | Ne contient pas |
| -shl | Shiftbitsleft (PowerShell3.0) |
| -shr | Shiftbitsright–preservessignforsignedvalues.(PowerShell3.0) |
| -in | Like–contains,butwiththeoperandsreversed.(PowerShell3.0) |
| -notin | Like–notcontains,butwiththeoperandsreversed.(PowerShell3.0) |
Publicité
Pages Web
| Site Web | Description |
|---|---|
| Technet.microsoft.com | Converting VBScript's Len Function |
| Ss64.com | Comparison Operators |
Article(s) suivant(s)
Article(s) précédent(s)