Probar la vacuidad de una cadena con test -z
En este paso, aprenderá cómo comprobar si una cadena de texto (string) está vacía en Linux utilizando el comando test
con la opción -z
. Esta es una operación fundamental cuando se trabaja con cadenas de texto en scripting de shell.
El comando test
se utiliza para evaluar expresiones condicionales. La opción -z
comprueba específicamente si la longitud de una cadena de texto es cero. Si la cadena de texto está vacía, la prueba es verdadera; de lo contrario, es falsa.
Intentémoslo en la terminal. Primero, definiremos una variable de cadena de texto vacía. En scripting de shell, se define una variable escribiendo su nombre, seguido de un signo igual (=
) y luego el valor. No debe haber espacios alrededor del signo igual.
Escriba el siguiente comando para definir una variable de cadena de texto vacía llamada my_string
:
my_string=""
Ahora, usemos el comando test -z
para comprobar si my_string
está vacía. El comando test
en sí no produce salida; su resultado se utiliza para controlar el flujo de un script (lo cual aprenderá más adelante). Sin embargo, podemos ver su resultado comprobando el estado de salida del comando anterior utilizando echo $?
. Un estado de salida de 0
indica éxito (verdadero), y un estado distinto de cero indica fracaso (falso).
Escriba el siguiente comando para probar si my_string
está vacía:
test -z "$my_string"
Después de ejecutar el comando test
, compruebe su estado de salida:
echo $?
Dado que my_string
está vacía, el comando test -z
debe evaluarse como verdadero, y el comando echo $?
debe mostrar 0
.
Ahora, definamos una cadena de texto no vacía:
another_string="Hello"
Y probemos si está vacía:
test -z "$another_string"
Compruebe el estado de salida:
echo $?
Esta vez, dado que another_string
no está vacía, el comando test -z
debe evaluarse como falso, y el comando echo $?
debe mostrar 1
.
Comprender cómo probar cadenas de texto vacías es crucial para escribir scripts de shell robustos que manejen diferentes entradas correctamente.