Link Search Menu Expand Document


Shell script static analysis tool. Check shell scripts for errors, usage of deprecated/insecure features, and bad practices. More information:

  • Check a shell script:

shellcheck {{path/to/}}

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

shellcheck --shell {{sh|bash|dash|ksh}} {{path/to/}}

  • Ignore one or more error types:

shellcheck --exclude {{SC1009,SC1073}} {{path/to/}}

  • Also check any sourced shell scripts:

shellcheck --checked-sourced {{path/to/}}

  • Display output in the specified format (defaults to tty):

shellcheck --format {{tty|checkstyle|diff|gcc|json|json1|quiet}} {{path/to/}}

  • Enable one or more optional checks:

shellcheck --enable={{add-default-case|avoid-nullary-conditions}}

  • List all available optional checks that are disabled by default:

shellcheck --list-optional