Reasons include: file not found, no permissions, not included on the
command line, not allowing shellcheck
to follow files with
-x
, etc.
source somefile
In case you have access to the file, e.g. if it is included in your source code repository:
# shellcheck source=somefile
source somefile
In case you do not have access to the file:
# shellcheck source=/dev/null
source somefile
ShellCheck, for whichever reason, is not able to access the source file.
This could be because:
shellcheck -x
(or specified
external-sources=true
in the .shellcheckrc) to allow following
other filesFeel free to ignore the error with a directive.
ShellCheck is unable to follow dynamic paths, such as
source "$somedir/file"
. For these cases, see SC1090: Can't follow non-constant source. Use a directive
to specify location instead. You may be seeing SC1091 because
ShellCheck tried to be helpful and strip a leading dynamic path element
as described on that page.
If you're fine with it, ignore the message with a directive.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.