SC1044 – ShellCheck Wiki

See this page on GitHub


Couldn't find end token EOF in the here document.

Problematic code:

cat << EOF
  Hello World

Correct code:

cat << EOF
  Hello World


The << here document (aka heredoc) was not properly terminated. The terminating token needs to be on a separate line without indenting (or indented with tabs only when using <<-).

Note that you can not put here documents in one liners. For such use cases, use a <<< here string:

cat << EOF  hello world  EOF   # Wrong: data and terminator can not be on the same line
cat <<< "hello world"          # Correct



ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.