Lo más hermoso de todos los resultados que podamos tener con BASH, o bien con cualquier otro lenguaje de scripting, es ver un script funcionando a cabalidad…
Lamentablemente, muy difícilmente realizaremos un programa completo (por lo menos a nivel principiante), sin encontrarnos con los errores que todos pasamos, odiamos, y aprendemos a corregir. La primera opción para depurar nuestro guion es añadiendo un echo a todas las variables, que utilizamos, y verificando manualmente que todo está correctamente sentenciado.
Ahora; en la realidad existen dos formas de hacer una depuración (debug) profesional de nuestros scripts BASH.
Una es:
sh -x fichero
Esto ejecutará el script y mostrará todas la sentencias que se ejecutan con las variables y comodines ya expandidos.
La otra es utilizando el modo de comprobación de sintaxis sin ejecutar el programa, de la siguiente forma:
sh -n tu_script
Si no retorna nada entonces tu programa no tiene errores de sintaxis y estamos listos para continuar.