Comprobar si una variable tiene un valor en Bash

MD Aminul Islam 20 junio 2023
  1. Utilice if...else para comprobar si una variable tiene un valor en Bash
  2. Use corchetes dobles para verificar si una variable tiene un valor en Bash
  3. Use la expresión de parámetro para verificar si una variable tiene un valor en Bash
  4. Use la expresión condicional -z para verificar si una variable tiene un valor en Bash
  5. Use la expresión condicional -n para verificar si una variable tiene un valor en Bash
Comprobar si una variable tiene un valor en Bash

A veces, necesitamos verificar si la variable contiene un valor o no. Esto es importante cuando se trabaja en un proyecto que contiene información del usuario para ejecutar.

En un script Bash, podemos seguir muchas formas de verificar si una variable contiene un valor o no. Este artículo mostrará cómo podemos verificar el valor de una variable.

Además, veremos ejemplos y explicaciones necesarias para facilitar el tema.

Utilice if...else para comprobar si una variable tiene un valor en Bash

El primer método que usaremos para verificar una variable es la instrucción if...else. También podemos verificar si una variable contiene un valor o no usando este método.

Para hacer esto, puede seguir el código de ejemplo que se muestra a continuación:

VAR=
if [ x"${VAR}" == "x" ]; then
     echo "No value found for the variable"
  else
     echo "Value found for the variable"
  fi

En el ejemplo anterior, a través de la línea if [ x"${VAR}" == "x" ];, comprobamos si la variable contiene un valor. Cuando ejecute el código, obtendrá el siguiente resultado:

No value found for the variable

Use corchetes dobles para verificar si una variable tiene un valor en Bash

También podemos realizar la misma tarea utilizando corchetes dobles [[]]. Esta sección mostrará cómo podemos verificar el valor de una variable a través de corchetes dobles usando el código de ejemplo que se comparte a continuación.

VAR=
[[ x"${VAR}" == "x" ]] && echo "No value found for the variable" || echo "Value found for the variable"

En el ejemplo anterior, a través de la línea [[ x"${VAR}" == "x" ]], comprobamos si la variable contiene un valor. Ahora, cuando ejecute este código, obtendrá un resultado como el siguiente:

No value found for the variable

Use la expresión de parámetro para verificar si una variable tiene un valor en Bash

Otra forma de verificar si la variable contiene un valor es usar la expresión de parámetro.

Esta sección usará la expresión de parámetro incorporada para verificar una variable. Para ello, puede seguir el siguiente ejemplo:

VAR=
[[ ${VAR:-"unset"} == "unset" ]] && echo "No value found for the variable" || echo "Value found for the variable"

En el ejemplo anterior, a través de la línea [[ ${VAR:-"unset"} == "unset" ]], verificamos si la variable contiene valor.

Ahora, cuando ejecute el código anterior, obtendrá un resultado como el siguiente:

No value found for the variable

Use la expresión condicional -z para verificar si una variable tiene un valor en Bash

En el scripting de Bash, hay una expresión condicional -z, que podemos usar para verificar si una variable contiene un valor o no. Devuelve true si la longitud de la cadena es 0.

Para verificar si una variable contiene un valor o no a través de este método, puede seguir el siguiente código de ejemplo:

var=
[[ -z "${var}" ]] && echo "No value was found for the variable !!!" || echo "Value found for the variable..."

En el ejemplo anterior, a través de la línea [[ -z "${VAR}" ]], verificamos si la variable contiene un valor.

Cuando ejecute el código anterior, obtendrá el siguiente resultado:

No value was found for the variable !!!

Use la expresión condicional -n para verificar si una variable tiene un valor en Bash

Además, Bash tiene una expresión condicional -n incorporada que podemos usar para verificar la variable.

La expresión condicional -n devuelve verdadero si la longitud de la cadena es un valor distinto de cero. También podemos usar este método para verificar si la variable contiene un valor o no.

Puede seguir el código de ejemplo que se comparte a continuación:

VAR=
[[ ! -n "${VAR}" ]] && echo "No value found for the variable" || echo "Value found for the variable"

En el ejemplo anterior, a través de la línea [[ ! -n "${VAR}" ]], comprobamos si la variable contiene un valor.

Ahora, cuando ejecute este código, obtendrá un resultado como el siguiente:

No value found for the variable

Puede seleccionar cualquiera de los métodos anteriores para verificar su variable según sus necesidades y complejidad.

Tenga en cuenta que todo el código utilizado en este artículo está escrito en Bash. Solo se podrá ejecutar en el entorno Linux Shell.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

Artículo relacionado - Bash Variable