If features are integrated, then I would probably want to have something about error handling because it is difficult to get right in bash even with shellcheck¹ plus shellharden², and gets just worse when things run in parallel.
All shells take the -n option to perform a basic syntax check.
Debian has a script for checking scripts for bashisms:
https://manpages.debian.org/checkbashisms
bashate is a automated style checker for bash (similar to pep8 for python):
https://opendev.org/openstack/bashate
lintshell is an early prototype of a shell linter based on the Morbig trustworthy static parser for POSIX shell, based on the Why3 platform for deductive program verification.
https://www.irif.fr/~treinen/colis/ https://github.com/colis-anr/morbig https://github.com/colis-anr/lintshell
Shellharden helps rewrite scripts for ShellCheck compliance:
https://github.com/anordal/shellharden/
shfmt is gofmt for shell:
ShellScriptFormatter is another formatter:
https://github.com/osalvador/ShellScriptFormatter
Some of these tools and other tools can be automatically run by check-all-the-things:
All shells take the -n option to perform a basic syntax check.
Debian has a script for checking scripts for bashisms:
https://manpages.debian.org/checkbashisms
bashate is a automated style checker for bash (similar to pep8 for python):
https://opendev.org/openstack/bashate
lintshell is an early prototype of a shell linter based on the Morbig trustworthy static parser for POSIX shell, based on the Why3 platform for deductive program verification.
https://www.irif.fr/~treinen/colis/ https://github.com/colis-anr/morbig https://github.com/colis-anr/lintshell
Shellharden helps rewrite scripts for ShellCheck compliance:
https://github.com/anordal/shellharden/
shfmt is gofmt for shell:
ShellScriptFormatter is another formatter:
https://github.com/osalvador/ShellScriptFormatter
Some of these tools and other tools can be automatically run by check-all-the-things: