2 SC1144
Joachim Ansorg edited this page 2022-10-31 15:14:44 +01:00

external-sources can only be enabled in .shellcheckrc, not in individual files.

Problematic code:

# shellcheck external-sources=true
source /dev/zero

Correct code:

Add external-sources=true to .shellcheckrc

Rationale:

Due to its origins as an online tool, ShellCheck will by default run in a sandbox where it only reads the files explicitly named on the command line.

The external-sources directive allows disabling this, but must be specified in .shellcheckrc. This is because the sandbox would be useless if the sandboxed script can disable it for itself.

Exceptions:

None.

  • Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!