Comprobar si la variable está vacía en Bash
-
Uso de la opción
-z
para verificar si la variable está vacía en Bash -
Uso de la opción
-n
para verificar si la variable está vacía en Bash - Comprobar si una variable está vacía en Bash - Comparar con una cadena vacía
- Compruebe si una variable está vacía en Bash: compruebe con el método de reemplazo
Este tutorial ilustra cómo verificar si una variable está vacía en bash usando el comando de prueba con las opciones -z
y -n
.
Uso de la opción -z
para verificar si la variable está vacía en Bash
Usamos el comando test
con la opción -z
. La opción -z
comprueba si la longitud de la variable de cadena es 0
.
Si la longitud de la variable de cadena es 0
, la prueba devuelve true
y el script imprime en la salida estándar que la variable de cadena está vacía. Y si la longitud de la variable de cadena no es 0
, el script imprime que la variable de cadena no está vacía.
La variable greet
tiene asignada una cadena en el caso siguiente. Durante la prueba, la variable greet
se comprueba si la longitud del valor de cadena que almacena tiene la longitud de 0
.
Dado que la variable greet
tiene la cadena Hi
, que tiene dos caracteres asignados, la prueba devuelve false
y el script muestra que la variable greet
no está vacía en la salida estándar.
greet='Hi'
if [ -z "$greet" ]
then
echo "\$greet is empty"
else
echo "\$greet is not empty"
fi
Producción :
$greet is not empty
La variable greet
se asigna a una cadena vacía en el siguiente script. La variable greet
se comprueba mediante el comando test
/[
para ver si la longitud de su valor de cadena es 0
.
Dado que la variable greet
se asigna a una cadena vacía, la prueba devuelve true
y el script imprime en la salida estándar que la variable greet
está vacía.
#!/bin/bash
greet=''
if [ -z "$greet" ]
then
echo "\$greet is empty"
else
echo "\$greet is not empty"
fi
Producción :
$greet is empty
Uso de la opción -n
para verificar si la variable está vacía en Bash
El siguiente script usa el comando de prueba con la opción -n
para verificar si una variable de cadena está vacía. La opción -n
comprueba si la longitud del valor en la variable de cadena es distinta de cero.
Si la longitud de la cadena en la variable no es cero, la prueba devuelve true
e imprime que la variable no está vacía. Si la longitud de la variable de cadena es cero, la prueba devuelve false
e imprime que la variable está vacía.
La variable greet
se asigna a una cadena vacía en el siguiente script. Cuando la variable greet
se comprueba con el comando test
, si la longitud de la cadena que almacena es distinta de cero, devuelve false
y el script ejecuta el comando en la sección else
.
#!/bin/bash
greet=''
if [ -n "$greet" ]
then
echo "\$greet is not empty"
else
echo "\$greet is empty"
fi
Producción :
$greet is empty
La variable greet
se ha asignado a Hi
, una cadena con dos caracteres en el script a continuación.
La prueba que verifica si la longitud de la cadena en la variable greet
es distinta de cero devuelve true
porque la variable greet
está asignada a una cadena con dos caracteres. El script imprime que la variable greet
no está vacía en la salida estándar.
#!/bin/bash
greet='Hi'
if [ -n "$greet" ]
then
echo "\$greet is not empty"
else
echo "\$greet is empty"
fi
Producción :
$greet is not empty
Comprobar si una variable está vacía en Bash - Comparar con una cadena vacía
Podemos comprobar si el valor está vacío comparándolo con ""
.
x="Non-empty variable"
if [[ "$x" == "" ]]; then
echo "x is empty"
else
echo "x is not empty"
fi
Compruebe si una variable está vacía en Bash: compruebe con el método de reemplazo
Si se define x
, la expresión se reemplaza por test
, de lo contrario, null
.
if [ ${x:+test} ]; then
echo "x is not empty"
else
echo "x is empty"
fi