Repolode
koalaman

koalaman/shellcheck

Herramienta de análisis estático que detecta errores, problemas de portabilidad y malas prácticas en scripts de shell bash y sh.

Estrellas
40,298
Forks
1,973
Issues abiertos
1,090
Último commit
hace 4 horas

¿Qué es?

ShellCheck analiza scripts de shell e informa sobre errores de sintaxis, problemas semánticos y errores sutiles que pueden hacer que un script se comporte de forma inesperada o falle más adelante. Está pensado para scripts bash y sh, y señala problemas como variables sin comillas, operadores de prueba mal usados, patrones incorrectos de find o grep y códigos de salida ocultos, con una explicación para cada advertencia.

Se puede usar en shellcheck.net, desde la línea de comandos o en editores como Vim, Emacs, Sublime, VS Code y Pulsar. La salida puede ser texto sin formato, JSON, XML de CheckStyle o mensajes al estilo de GCC; además, los códigos de salida permiten hacer que una compilación o ejecución de pruebas falle cuando aparecen advertencias.

ShellCheck está escrito en Haskell y se distribuye bajo la licencia GPL-3.0. Está disponible en la mayoría de los gestores de paquetes de sistemas, en Docker y conda, y como binarios precompilados para Linux, macOS y Windows.

Funciones clave

  • 01Detecta errores de comillas, condicionales incorrectas y comandos mal usados en scripts bash y sh.
  • 02Señala problemas de portabilidad según el shebang del script, de forma similar a checkbashisms.
  • 03Explica cada advertencia e incluye enlaces a páginas detalladas de la wiki.
  • 04Se integra con muchos editores y servicios de CI.
  • 05Genera texto, JSON, XML de CheckStyle o mensajes compatibles con GCC.

Casos de uso

  • Analizar scripts de shell en un pipeline de CI para que las compilaciones fallen si aparecen nuevas advertencias.
  • Detectar variables sin comillas y patrones peligrosos de rm o find antes de ejecutar un script.
  • Comprobar que un script escrito para /bin/sh no dependa de funciones exclusivas de bash.
  • Recibir comentarios en línea mientras se editan scripts de shell en el editor.

Inicio rápido

  1. 1

    Instala ShellCheck con Homebrew

    brew install shellcheck
  2. 2

    Ejecuta ShellCheck en un script

    shellcheck yourscript

Antes de usarlo

  • Se distribuye bajo la licencia GPL-3.0, una licencia copyleft.
  • Compilar desde el código fuente requiere aproximadamente 2 GB de RAM.

En colecciones

Temas

Preguntas frecuentes

¿Qué es shellcheck?
Herramienta de análisis estático que detecta errores, problemas de portabilidad y malas prácticas en scripts de shell bash y sh. ShellCheck analiza scripts de shell e informa sobre errores de sintaxis, problemas semánticos y errores sutiles que pueden hacer que un script se comporte de forma inesperada o falle más adelante. Está pensado para scripts bash y sh, y señala problemas como variables sin comillas, operadores de prueba mal usados, patrones incorrectos de find o grep y códigos de salida ocultos, con una explicación para cada advertencia.
¿shellcheck es gratuito? ¿Qué licencia tiene?
shellcheck es open source bajo la licencia GPL-3.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿shellcheck sigue mantenido?
Mantenimiento activo. El último commit de shellcheck fue el 7 nov 2026.
¿Para qué puedo usar shellcheck?
Analizar scripts de shell en un pipeline de CI para que las compilaciones fallen si aparecen nuevas advertencias. Detectar variables sin comillas y patrones peligrosos de rm o find antes de ejecutar un script. Comprobar que un script escrito para /bin/sh no dependa de funciones exclusivas de bash. Recibir comentarios en línea mientras se editan scripts de shell en el editor.
¿Cómo se instala shellcheck?
Instala ShellCheck con Homebrew: brew install shellcheck Ejecuta ShellCheck en un script: shellcheck yourscript
¿Dónde consigo shellcheck?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/koalaman/shellcheck

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados