Negar una condición en PowerShell
PowerShell tiene diferentes declaraciones de toma de decisiones para ejecutar los códigos como otros lenguajes de programación. Puede usar condiciones para la toma de decisiones en los scripts de PowerShell. Los scripts realizan diferentes acciones en función de esas decisiones. Si la condición es true
, ejecutará un comando, y si la condición es “falsa”, ejecutará el otro comando.
Una de las sentencias más utilizadas en PowerShell es la sentencia If
. Tiene tres tipos: sentencia if
, sentencia if-else
y sentencia anidada if
. PowerShell también usa una declaración de switch
como declaración condicional.
Aquí hay un ejemplo simple de la declaración if
.
if(5 -lt 7){
Write-Host "5 is less than 7"
}
Si 5 es menor que 7, ejecuta el comando Write-Host
.
Producción :
5 is less than 7
Los operadores lógicos conectan las declaraciones condicionales en PowerShell, lo que le permite probar múltiples condiciones. PowerShell admite -and
, -or
, -xor
, -not
y !
operadores logicos. Este tutorial le enseñará a negar una condición en PowerShell.
Use el operador -not
para negar una condición en PowerShell
-not
es un operador lógico que niega la declaración en PowerShell. Puede usar un operador -not
para negar una condición en PowerShell.
if (-not (5 -lt 7)){
Write-Host "5 is less than 7"
}
Esta vez, no imprime ninguna salida porque la condición se vuelve negativa con el operador -not
. Dice 5 is less than 7
, lo cual es falso.
Ahora, probemos otra condición, 5 is greater than 7
con el operador -not
.
if (-not (5 -gt 7)){
Write-Host "5 is less than 7"
}
Imprime la salida porque 5 no es mayor que 7
es verdadero.
Producción :
5 is less than 7
Usar !
Operador para negar una condición en PowerShell
También puede utilizar el !
operador para negar una condición en PowerShell. Es lo mismo que el operador -no
.
Tenemos dos variables, $a
y $b
, con el valor de abajo.
$a=3; $b=9
Aquí, la condición se convierte en $a is not less than $b
con !
operador. Si la condición es true
, ejecutará el primer comando, y si la condición es false
, se ejecutará el segundo comando.
if (! ($a -lt $b)){
Write-Host "$a is greater than $b"
}
else{
Write-Host "$a is less than $b"
}
Producción :
3 is less than 9