Comprobar si la variable está configurada en Bash

  1. Compruebe si la variable está configurada usando -v en Bash
  2. Compruebe si la variable está configurada usando -z en Bash
  3. Compruebe si la variable está configurada o no asignando un valor nulo en Bash
Comprobar si la variable está configurada en Bash

Primero debemos definir una variable y darle un valor para establecer una variable.

El valor puede ser nulo, pero debe ser asignado. Hay una distinción entre una variable no configurada y una variable nula.

A diferencia de los lenguajes de programación más comunes, Bash no tiene una función integrada para determinar si una variable está configurada o no. Aún así, tiene la capacidad de hacerlo.

En Bash Scripting, podemos usar las opciones -v var o -z $var como expresión con el comando condicional if para confirmar si una variable está configurada o no.

[[-v Name_Of_Variable]] [[-z Name_Of_Variable]] 

Si la variable está establecida, la expresión booleana devuelve True, de lo contrario, devuelve False.

Compruebe si la variable está configurada usando -v en Bash

Verificaremos si una variable está configurada usando la -v Variable ahora.

Definamos una variable X con un valor de 5. Si la variable está configurada, devolverá Variable 'X' is set..

#!/bin/bash  X=5  if [[ -v X ]]; then echo "Variable 'X' is set." else echo "Variable 'X' is not set." fi 

Producción :

Variable 'X' is set. 

Como definimos la variable y le asignamos el valor, funcionó como se esperaba. Veamos otro ejemplo.

#!/bin/bash  if [[ -v Y ]]; then echo "Variable 'Y' is set." else echo "Variable 'Y' is not set." fi 

Producción :

Variable 'Y' is not set. 

Como no definimos ninguna variable Y, la salida dice que la variable Y no está configurada.

Compruebe si la variable está configurada usando -z en Bash

Verificaremos si una variable está configurada usando -z Variable ahora.

Definamos una variable X con un valor de 5. Si la variable está configurada, devolverá Variable 'X' is set..

#!/bin/bash X=5  if [[ -z ${X} ]]; then echo "Variable 'X' is not set." else echo "Variable 'X' is set." fi 

Aquí, la primera condición if devolverá False, la segunda devolverá True y se imprimirá Variable 'X' is set..

Producción :

Variable 'X' is set. 

Funcionó como se esperaba ya que definimos la variable y le asignamos un valor. Considere otro ejemplo.

#!/bin/bash  if [[ -z ${X} ]]; then echo "Variable 'X' is not set." else echo "Variable 'X' is set." fi 

Producción :

Variable 'X' is not set. 

Compruebe si la variable está configurada o no asignando un valor nulo en Bash

Verificaremos si una variable está configurada usando -v Variable ahora.

Definamos una variable X con un valor null como X="". Si la variable está configurada, devolverá Variable 'X' is set..

#!/bin/bash  X="" if [[ -v X ]]; then  echo "Variable 'X' is set." else  echo "Variable 'X' is not set." fi 

Producción :

Variable 'X' is set. 

Como podemos ver, incluso si se asigna un valor null a una variable, aparecerá como establecido después de la verificación.

¿Disfrutas de nuestros tutoriales? Suscríbete a DelftStack en YouTube para apoyarnos en la creación de más guías en vídeo de alta calidad. Suscríbete

Artículo relacionado - Bash Variable