then
for this if
?if true
echo "foo"
elif true
echo "bar"
fi
if true
then
echo "foo"
elif true
then
echo "bar"
fi
ShellCheck found a parsing error in the script, and determined that
it's most likely due to a missing then
keyword for the
if
or elif
indicated.
Make sure the then
is there.
Note that the then
needs a ;
or linefeed
before it. if true then
is invalid, while
if true; then
is correct.
None
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.