Tutorial de comandos de prueba de Linux para principiantes (con ejemplos)

A veces, mientras trabajas en la línea de comandos de Linux, puede que quieras comprobar ciertas cosas, como valores enteros, o si un archivo es o no de cierto tipo… Te alegrará saber que existe una utilidad de prueba integrada en la línea de comandos que te permite realizar la mayoría de estas comparaciones y pruebas.

En este tutorial, hablaremos de los fundamentos de esta herramienta utilizando algunos ejemplos fáciles de entender. Pero antes de hacerlo, conviene mencionar que todos los ejemplos del artículo se han probado en Ubuntu 16.04 LTS.

Comando de prueba de Linux

Como ya hemos mencionado, el comando test se utiliza para realizar comprobaciones y comparaciones. Aquí está su sintaxis:

test EXPRESSION

Y esto es lo que dice la página man sobre esta utilidad:

test - check file types and compare values

A continuación encontrarás algunos ejemplos de tipo Q&A que te darán una buena idea de cómo funciona la herramienta.

Nota: Ten en cuenta que algunas de las opciones de línea de comandos que ofrece test son más útiles cuando se utilizan dentro de scripts de shell.

Q1. ¿Cómo se comparan dos cadenas?

Es sencillo, sólo tienes que utilizar el signo igual a (=) entre ellas. Por ejemplo:

test howto = forge

Una forma mejor sería escribir algo así:

test howto = forge && echo "same"

Así, si las cadenas son iguales, se imprimirá la palabra «igual» en la salida, de lo contrario no se imprimirá nada.

¿Cómo comparar dos cadenas?

Del mismo modo, puedes utilizar la siguiente plantilla si quieres comprobar la desigualdad.

STRING1 != STRING2

Q2. ¿Cómo se comparan los enteros con la prueba?

Esto también es muy sencillo: sólo tienes que compararlos utilizando «-eq». Por ejemplo:

test 5 -eq 7 && echo "same"

Aquí tienes una captura de pantalla que muestra cómo funciona esta opción de la línea de comandos:

¿Cómo comparar números enteros mediante un test?

Del mismo modo, puedes utilizar ‘-ge‘ para comprobar que es mayor o igual que,‘-gt‘ para que sea mayor que, ‘-le‘ para que sea menor o igual que,‘-lt‘ para que sea menor que y‘-ne‘ para que no sea igual.

Q3. ¿Cómo se comprueban/comparan los archivos mediante el test?

Para comprobar cuál de los dos archivos es más nuevo, utiliza ‘-nt’. Por ejemplo:

test file1 -nt file2

Así es como lo he probado en mi sistema:

¿Cómo probar/comparar archivos mediante el test?

Otras comparaciones de archivos que puedes realizar incluyen cuál de los dos archivos es más antiguo (-ot) y si dos archivos tienen los mismos números de dispositivo e inodo (-ef).

Para comprobar si un archivo determinado es un directorio, utiliza la opción -d de la siguiente manera

test -d [nombre del archivo]

Por ejemplo

test -d directorio_nuevo

A continuación se indican otras opciones de comprobación del tipo de archivo que ofrece el comando «test»:

Resultado del uso del comando de prueba

Q4. ¿Cómo maneja el comando test los enlaces simbólicos?

El comando ‘test’ hace referencia a los enlaces simbólicos, aunque hay un par de excepciones. Lo siguiente es lo que dice la página del manual al respecto:

Except for -h and -L, all FILE-related tests dereference symboliclinks.

Por si no lo sabes, tanto -h como -L comprueban si un archivo existe y es un enlace simbólico, por lo que su exclusión tiene sentido, ¿no?

Conclusión

El comando test ofrece muchas opciones, pero a grandes rasgos, puedes agruparlas en 3-4 categorías. Hemos proporcionado ejemplos sobre cada categoría. Así que pruébalos, y cuando termines, dirígete a lapágina man de la utilidad para obtener más información.

También te podría gustar...