GNU/Linux >> Tutoriales Linux >  >> Linux

ShellCheck:una utilidad gratuita para encontrar errores en sus scripts de Shell

Usted es un programador en ciernes y acaba de escribir un script de shell simple. ¿Querías comprobar si hay algún error, pero no sabes cómo? ¡No hay problema! Ahora, puede encontrar fácilmente errores en sus scripts de shell usando ShellCheck .

ShellCheck es una herramienta de análisis estático para scripts de shell. ShellCheck analizará el script de shell y mostrará si hay algún error en sus scripts de shell al instante. Está escrito en lenguaje Haskell y distribuido libremente bajo GPLv3.

ShellCheck analizará el script y hará lo siguiente:

  • Compruebe si hay citas incorrectas,
  • Comprobar declaraciones de prueba incorrectas,
  • Reconocer comandos incorrectos,
  • Reconocer errores de sintaxis,
  • Sugerirle que mejore el estilo del guión,
  • Reconocer errores tipográficos,
  • Mejore la solidez de su secuencia de comandos,
  • Y verifique algunos otros problemas.

No necesita la ayuda de ningún experto para corregir errores en sus scripts. Simplemente abra ShellCheck, pegue su script y ¡bum! Puede usar ShellCheck en línea o fuera de línea. ¡En este breve tutorial, te mostraré ambos!

ShellCheck en la web

Puede consultar los scripts en línea en cualquiera visitando el sitio web de ShellCheck.

Abra su navegador web y vaya al siguiente enlace.

Pegue su script de shell en él para recibir comentarios instantáneos.

Salida de muestra:

Nota: No escribí el script usado en este ejemplo. Acabo de encontrarlo en línea para probar ShellCheck.

Alternativamente, puede instalarlo en su caja de Linux y probar su script en cualquier momento sin conexión.

Instalar ShellCheck en Linux

ShellCheck está empaquetado para la mayoría de los sistemas operativos Linux. Puede instalarlo fácilmente utilizando el administrador de paquetes de su distribución, como se muestra a continuación.

Sobre Arch Linux y sus derivados:

$ sudo pacman -S shellcheck

En Debian, Ubuntu, Linux Mint, ejecute el siguiente comando para instalarlo:

$ sudo apt-get install shellcheck

En RHEL, CentOS habilita el repositorio EPEL:

$ sudo yum -y install epel-release

E instale shellcheck:

$ sudo yum install ShellCheck

En sistemas Fedora:

$ sudo dnf install ShellCheck

En openSUSE (edición Tumbleweed), ejecute el siguiente comando:

$ sudo zypper in ShellCheck

Para otras distribuciones, consulte la página de instalación oficial .

Encuentre errores en sus scripts de Shell usando ShellCheck en Linux

Una vez instalado, abra Terminal y ejecute el siguiente comando para probar sus scripts.

shellcheck <path_of_your_script>

Ejemplo: 

$ shellcheck myscript.sh

Salida de muestra:

In myscript.sh line 1:
# This script displays the date, time, username and
^-- SC2148: Tips depend on target shell and yours is unknown. Add a shebang.


In myscript.sh line 6:
 echo "Your username is: `whoami` \\n"
 ^-- SC2006: Use $(..) instead of legacy `..`.
 ^-- SC2028: echo won't expand escape sequences. Consider printf.

Como puede ver en el resultado anterior, ShellCheck indica las sugerencias en la línea 1 y la línea 6.

Tenga en cuenta que ShellCheck no corregirá los errores en los scripts automáticamente. En cambio, dará advertencias y sugerencias para sus scripts de shell.

La utilidad ShellCheck podría ser útil para cualquier persona que quiera aprender a escribir scripts de Shell. Simplemente escriba un script, copie y pegue el código en ShellCheck y encuentre los errores. ¡Es así de simple!


Linux
  1. Cómo usar entradas en sus scripts de shell

  2. ¿Permitir Setuid en scripts de Shell?

  3. ¿Matrices asociativas en scripts de Shell?

  4. ¿Prueba de shell para encontrar un patrón en una cadena?

  5. ¿Ocultar la contraseña en los scripts de Shell?

¿Choque de concha? ¡No, ShellCheck! Encuentra errores en tus scripts.

Matrices en scripts de Shell

¿Cómo usar if-else en Shell Scripts?

Comprender el bucle for en los scripts de Shell

El bucle while en los scripts de Shell

Encuentra el tamaño de RAM en Linux