Pase parámetros booleanos a un script de PowerShell desde un símbolo del sistema
Un script de PowerShell es una colección de comandos guardados en un archivo de texto con la extensión .ps1
. PowerShell ejecuta esos comandos en secuencia para realizar diferentes acciones. Puede definir parámetros en PowerShell usando la instrucción param
.
Aquí hay un ejemplo de un script de PowerShell simple, myscript.ps1
, que toma el valor como entrada del usuario.
param($a,$b)
if($a -lt $b){
Write-Host "$a is less than $b"
}
else{
Write-Host "$a is not less than $b"
}
Puede usar el siguiente comando para pasar valores y ejecutar el script anterior desde un símbolo del sistema.
powershell.exe -NoProfile -Command .\myscript.ps1 -a 4 -b 5
Producción :
4 is less than 5
Como puede ver, pudimos pasar valores a un script de PowerShell desde un símbolo del sistema. Te enseñaremos a pasar valores booleanos
a un script de PowerShell desde un símbolo del sistema. Un valor booleano puede ser TRUE
o FALSE
.
Use el parámetro booleano para pasar valores booleanos a un script de PowerShell desde un símbolo del sistema
Puede establecer el tipo de datos de su parámetro en [bool]
para pasar valores booleanos a un script de PowerShell desde un símbolo del sistema.
param([int]$a, [bool]$b)
switch($b){
$true {"It is true."}
$false {"It is false."}
}
Los parámetros booleanos solo aceptan valores y números booleanos, como $True
, $False
, 1
o 0
.
powershell.exe -NoProfile -Command .\myscript.ps1 -a 1 -b $True
Producción :
It is true.
Pruebe el valor False
:
powershell.exe -NoProfile -Command .\myscript.ps1 -a 5 -b 0
Producción :
It is false.
Use el parámetro switch
para pasar valores booleanos a un script de PowerShell desde un símbolo del sistema
Un parámetro switch
en PowerShell no toma un valor. Pero, es de naturaleza booleana
y transmite un valor booleano true
o false
a través de su presencia o ausencia. Entonces, cuando un parámetro de interruptor está presente, tiene un valor real. Y cuando un parámetro de cambio está ausente, tiene un valor falso. Los parámetros Switch
son fáciles de usar y se prefieren a los parámetros Booleanos
, que tienen una sintaxis de PowerShell menos natural.
param ([int] $a, [switch] $b)
switch($b){
$true {"The value is $b."}
$false {"The value is $b."}
}
Cuando el parámetro de interruptor está presente:
powershell.exe -NoProfile -Command .\myscript2.ps1 -a 5 -b 1
Producción :
The value is True.
Cuando el parámetro de cambio está ausente:
powershell.exe -NoProfile -Command .\myscript2.ps1 -a 5
Producción :
The value is False.