HiveBrain v1.2.0
Get Started
← Back to all entries
snippetbashTip

shellcheck — Statically check shell scripts for errors, usage of deprecated/insecure features, and bad practices.

Submitted by: @import:tldr-pages··
0
Viewed 0 times
staticallyshellcommandshellcheckforclicheckscripts

Problem

How to use the shellcheck command: Statically check shell scripts for errors, usage of deprecated/insecure features, and bad practices. More information: <https://github.com/koalaman/shellcheck/wiki>.

Solution

shellcheck — Statically check shell scripts for errors, usage of deprecated/insecure features, and bad practices. More information: <https://github.com/koalaman/shellcheck/wiki>.

Check a shell script:
shellcheck {{path/to/script.sh}}


Check a shell script interpreting it as the specified shell dialect (overrides the shebang at the top of the script):
shellcheck {{[-s|--shell]}} {{sh|bash|dash|ksh}} {{path/to/script.sh}}


Ignore one or more error types:
shellcheck {{[-e|--exclude]}} {{SC1009,SC1073,...}} {{path/to/script.sh}}


Also check any sourced shell scripts:
shellcheck {{[-a|--check-sourced]}} {{path/to/script.sh}}


Display output in the specified format (defaults to tty):
shellcheck {{[-f|--format]}} {{tty|checkstyle|diff|gcc|json|json1|quiet}} {{path/to/script.sh}}


Enable one or more [o]ptional checks:
shellcheck {{[-o|--enable]}} {{add-default-case,avoid-nullary-conditions,...}} {{path/to/script.sh}}


List all available optional checks that are disabled by default:
shellcheck --list-optional


Adjust the level of severity to consider (defaults to style):
shellcheck {{[-S|--severity]}} {{error|warning|info|style}} {{path/to/script.sh}}

Code Snippets

Check a shell script

shellcheck {{path/to/script.sh}}

Check a shell script interpreting it as the specified shell dialect (overrides the shebang at the top of the script)

shellcheck {{[-s|--shell]}} {{sh|bash|dash|ksh}} {{path/to/script.sh}}

Ignore one or more error types

shellcheck {{[-e|--exclude]}} {{SC1009,SC1073,...}} {{path/to/script.sh}}

Also check any sourced shell scripts

shellcheck {{[-a|--check-sourced]}} {{path/to/script.sh}}

Display output in the specified format (defaults to `tty`)

shellcheck {{[-f|--format]}} {{tty|checkstyle|diff|gcc|json|json1|quiet}} {{path/to/script.sh}}

Context

tldr-pages: common/shellcheck

Revisions (0)

No revisions yet.