¿Tiene problemas con un script Bash que escribió para su PC con Linux? En lugar de mirar a través de innumerables subprocesos en StackExchange para obtener ayuda con la programación, considere usar la herramienta ShellCheck para depurar scripts de Linux Bash y encontrar automáticamente errores en su código.

Obtenga ShellCheck

ShellCheck es una herramienta útil, pero no viene con su sistema operativo Linux listo para usar. En cambio, si desea usarlo, primero tendrá que instalarlo. En este tutorial, cubriremos cómo instalar ShellCheck desde varias fuentes de software oficiales. Además, también le mostraremos cómo hacer que el programa funcione a través del binario genérico de Linux.

Abra una ventana de terminal y actualice sus paquetes. Luego, siga las instrucciones que correspondan a su sistema operativo Linux.

Ubuntu

ShellCheck se encuentra en las fuentes de software oficiales de Ubuntu, por lo que instalarlo es bastante fácil. En una terminal, use el administrador de paquetes Apt y obtenga la última versión de ShellCheck funcionando.

sudo apt install shellcheck

Debian

Debian Stable tiene una versión anterior de ShellCheck lista para que los usuarios la instalen. Tenga en cuenta que esta versión está retenida debido a la forma en que Debian hace las cosas.

  Cómo instalar Lightworks en Linux

Nota: ¿desea una versión más reciente del programa ShellCheck? Siga nuestra guía y aprenda cómo obtener software más moderno en Debian.

sudo apt-get install shellcheck

Arch Linux

Para obtener ShellCheck en Arch Linux, primero deberá habilitar el repositorio de software «Comunidad». Habilitar «Comunidad» requiere editar el archivo Pacman.conf. Para editar el archivo, abra Pacman.conf en Nano.

sudo nano /etc/pacman.conf

Desplácese (con las teclas de flecha) y busque la sección «Comunidad» del archivo. Elimine todas las instancias del símbolo # (aproximadamente tres líneas). Luego, guarde las ediciones presionando el botón Ctrl + O.

Con las nuevas ediciones de Pacman.conf resueltas, presione Ctrl + X para cerrar Nano. Luego, vuelva a sincronizar Pacman para configurar el acceso al repositorio de la “Comunidad” de Arch Linux.

sudo pacman -Syyuu

Finalmente, instale ShellCheck en Arch Linux con:

sudo pacman -S shellcheck

Fedora

Para obtener la herramienta de análisis de script ShellCheck en Fedora Linux, abra una terminal y use la herramienta de administración de paquetes DNF.

sudo dnf install ShellCheck

OpenSUSE

La instalación de ShellCheck en OpenSUSE no requiere pasos especiales, ya que se encuentra en las principales fuentes de software de la distribución. Para obtenerlo, ingrese el siguiente comando del paquete Zypper en una ventana de terminal.

sudo zypper install ShellCheck

Linux genérico

Los usuarios de distribuciones de Linux menos conocidas que deseen acceder a la herramienta de análisis de scripts ShellCheck deben instalar la versión binaria universal. Afortunadamente, esta versión binaria es fácil de instalar y no requiere retoques con el código fuente. Para que funcione, siga los pasos a continuación.

  Cómo jugar God of War en Linux

Paso 1: exporta la versión de ShellCheck que estás a punto de descargar a tu entorno de terminal.

export scversion="stable" # or "v0.4.7", or "latest"

Paso 2: con la herramienta de descarga wget, obtenga la última versión binaria de ShellCheck.

wget "https://storage.googleapis.com/shellcheck/shellcheck-${scversion}.linux.x86_64.tar.xz"

Paso 3: extraiga el archivo ShellCheck TarXZ con el comando tar.

tar --xz -xvf shellcheck-"${scversion}".linux.x86_64.tar.xz

Paso 4: instale ShellCheck en su PC con Linux con el comando cp.

cp shellcheck-"${scversion}"/shellcheck /usr/bin/

Depurar scripts con ShellCheck

El propósito principal de ShellCheck es revisar un script (generalmente Bash), detectar comandos mal utilizados y ofrecer correcciones. Para uso básico, haga lo siguiente.

Primero, diríjase al CD donde se encuentra el script que desea verificar en su PC con Linux. En este tutorial, nuestro script está en ~ / shell-scripts. El tuyo puede diferir.

cd ~/shell-scripts

Ejecute el comando ls y vea todos los archivos en el directorio actual.

  4 formas de crear un instalador USB de arranque en Linux

Nota: si tiene la intención de utilizar ShellCheck en un directorio con varios tipos de archivos, es una buena idea combinar grep y ls juntos. El uso de estos dos comandos juntos le permite filtrar todos los archivos que no son de script.

ls

O combínelo con grep para ver solo archivos de script.

ls | grep ".sh"
ls | grep ".bash"

Busque el nombre de un archivo de secuencia de comandos en el indicador ls y resalte el nombre del archivo con el mouse. Cuando esté listo, ejecútelo a través de ShellCheck y verifique su código.

shellcheck name-of-file.sh

o

shellcheck name-of-file.bash

Inmediatamente después de que se ejecute el comando shellcheck, detectará problemas con su código y lo colocará en el indicador de la terminal. Lea y aprenda cómo mejorar su programación siguiendo las sugerencias que le brinda.

Guarde el informe ShellCheck en un archivo

Obtener un informe instantáneo en la terminal para su programación de bash es muy útil, sin embargo, puede perderlo si cierra la terminal. Para evitar perder su informe shellcheck, recomendamos guardar la salida en un archivo de texto, ejecutando el programa en combinación con la característica >> en el terminal.

shellcheck name-of-file.sh >> ~/Documents/shellcheck-report-name-of-file.sh

o

shellcheck name-of-file.bash >> ~/Documents/shellcheck-report-name-of-file.bash

Vea su informe guardado en la terminal a través del comando cat.

cat ~/Documents/shellcheck-report-name-of-file.sh | more

o

cat ~/Documents/shellcheck-report-name-of-file.bash | more