Búsqueda de sitios web

¿Cómo comprobar si existe una variable en PowerShell?


Como usuario de PowerShell, debe averiguar si existe una variable específica antes de usarla en su secuencia de comandos. En este tutorial, le mostraré diferentes métodos para verificar si existe una variable en PowerShell y le brindaré algunos ejemplos reales.

Para comprobar si existe una variable en PowerShell, puede utilizar el cmdlet Get-Variable. Por ejemplo, para verificar si existe una variable llamada $stateName, puede usar el siguiente código: if (Get-Variable -Name stateName -ErrorAction SilentlyContinue) { Write-Host "La variable ' stateName' existe." } else { Write-Host "La variable 'stateName' no existe." }.

Método 1: uso del cmdlet Get-Variable

La mejor manera de comprobar si existe una variable en PowerShell es mediante el cmdlet Get-Variable. Este cmdlet le permite recuperar información sobre variables en la sesión actual de PowerShell.

He aquí un ejemplo:

$stateName = "California"

if (Get-Variable -Name stateName -ErrorAction SilentlyContinue) {
    Write-Host "The variable 'stateName' exists and its value is: $stateName"
} else {
    Write-Host "The variable 'stateName' does not exist."
}

En este ejemplo, primero definimos una variable $stateName y le asignamos el valor "California". Luego, usamos el cmdlet Get-Variable con el parámetro -Name para verificar si la variable existe. Al especificar -ErrorAction SilentlyContinue, suprimimos cualquier mensaje de error que se produciría si la variable no existiera.

Puede ver el resultado en la captura de pantalla a continuación después de ejecutar el script usando el código VS.

Consulte Dividir una cadena en variables en PowerShell

Método 2: uso del cmdlet Test-Path con la variable: proveedor

Otro método eficaz para comprobar la existencia de una variable es utilizar el cmdlet Test-Path en combinación con el proveedor Variable:. El cmdlet Test-Path se usa comúnmente para verificar la existencia de archivos o directorios, pero también se puede usar con el proveedor Variable: para verificar variables.

He aquí un ejemplo:

$zipCode = 90210

if (Test-Path variable:zipCode) {
    Write-Host "The variable 'zipCode' exists and its value is: $zipCode"
} else {
    Write-Host "The variable 'zipCode' does not exist."
}

En este caso, definimos una variable $zipCode y le asignamos el valor 90210, que representa un código postal famoso en EE. UU. Luego usamos el cmdlet Test-Path con el proveedor variable: seguido del nombre de la variable. Si la variable existe, la condición se evalúa como $true y se muestra el mensaje correspondiente.

Aquí está el resultado en la siguiente captura de pantalla:

Leer variables locales de PowerShell

Método 3: usar el operador -eq con $null

Un tercer método para comprobar si una variable existe en PowerShell es comparándola con $null usando el operador -eq. Si una variable no ha sido definida ni asignado un valor, se considera igual a $null.

He aquí un ejemplo:

$nationalPark = "Yellowstone"

if ($nationalPark -eq $null) {
    Write-Host "The variable 'nationalPark' does not exist or has no value assigned."
} else {
    Write-Host "The variable 'nationalPark' exists and its value is: $nationalPark"
}

En este ejemplo, definimos una variable $nationalPark y le asignamos el valor “Yellowstone”, en referencia al famoso parque nacional de Estados Unidos. Luego usamos el operador -eq para comparar $nationalPark con $null. Si la variable no existe o no tiene ningún valor asignado, la condición se evalúa como $true y se muestra el mensaje correspondiente.

Aquí está el resultado en la siguiente captura de pantalla:

Conclusión

En este tutorial, expliqué cómo verificar si existe una variable en PowerShell usando diferentes métodos, como usar el cmdlet Get-Variable, el Test-Path cmdlet con el proveedor Variable:, o el operador -eq con $null, etc. Siempre recomiendo usar el cmdlet Get-Variable de PowerShell para comprobar si la variable existe o no.

Artículos relacionados