Comprobar la sintaxis en Bash
Este artículo analiza formas de verificar un script de Bash en busca de problemas sintácticos sin ejecutar el script.
Los errores de sintaxis ocurren debido a algunos errores gramaticales o tipográficos en el código. En los compiladores modernos de otros lenguajes de programación, los compiladores resaltan estos errores incluso antes de ejecutar el programa.
Este no es el caso en los scripts de Bash porque Bash es un intérprete de línea de comandos. Por lo tanto, debemos verificar los errores de sintaxis por separado.
Puede haber diferentes técnicas para verificar problemas sintácticos como los siguientes.
Utilice el editor en línea ShellCheck
Hay una herramienta en línea, Shell Check, para verificar el script en busca de errores de sintaxis. La herramienta se puede encontrar aquí.
En la imagen de arriba, hay dos ventanas separadas. Uno es el editor de código, y la parte inferior muestra la lista de errores y advertencias en su código especificando números de línea.
El editor ShellCheck
es una herramienta muy útil para programadores principiantes y expertos porque detecta problemas menores a avanzados en el código antes de ejecutarlo.
Utilice el comando bash -n
(modo noexec
)
También puede usar el indicador -n
(noexec
) con el comando bash
para comprobar si hay errores en el script.
bash -n [script-name]
Esto solo leerá todos los comandos en el script y buscará errores sin ejecutarlos. Si hay errores en los comandos, los mostrará; de lo contrario, no se mostrará ninguna salida.
Por ejemplo, considere el siguiente script.
Tenga en cuenta que nos hemos perdido el cierre de la declaración if
(es decir, usamos fi
en lugar de if
). Por lo tanto, dará el error.
Usa el comando sh
Otro comando para verificar errores de sintaxis es:
sh -n [script-name]
Ejecutaremos el comando para el mismo script discutido en la sección anterior y verificaremos si hay errores.