ShellCheck - A shell script static analysis tool

To update or switch versions, run webi shellcheck@stable, or @vx.y.z for a specific version.


These are the files / directories that are created and/or modified with this install:


Cheat Sheet

shellcheck catches rookie mistakes (and old-habits-die-hard mistakes) in bash

Also recommended by Google's Shell Style Guide

How to run shellcheck from the CLI

shellcheck ./

How to run shellcheck in vim

shellcheck is supported by vim-ale out-of-the-box™.

Just install vim-ale and shellcheck and you're good to go.

How to run shellcheck in VS Code

See Visual Studio Marketplace: ShellCheck.

To use shellcheck in a build or test suite:

Simply include shellcheck in the process.

  # Fail if any of these files have warnings
  shellcheck myscripts/*.sh

How to ignore an error

You can ignore an error by putting a comment with the SCXXXX error code above it:

# shellcheck disable=<code>
# shellcheck disable=SC1004
NOT_AN_ERROR='Look, a literal \
inside of a string!'

Complete list of SCXXXX error codes:


Report an Issue Submit Installer Star on GitHub