sed \
-e "s/HOST/$HOSTNAME/g" \
-e "s/USER/$USER/g" \
# -e "s/ARCH/$(uname -m)/g" \
"$buildfile"
sed \
-e "s/HOST/$HOSTNAME/g" \
-e "s/ARCH/$(uname -m)/g" \
"$buildfile"
# This comment is moved out:
# -e "s/USER/$USER/g" \
or using backticked, inlined comments:
sed \
-e "s/HOST/$HOSTNAME/g" \
`# -e "s/USER/$USER/g"` \
-e "s/ARCH/$(uname -m)/g" \
"$buildfile"
(ShellCheck recognizes this idiom and does not suggest quotes or
$()
, neither of which would have worked)
ShellCheck found a line continuation followed by a commented line that appears to try to do the same.
Backslash line continuations are not respected in comments, and the line instead simply terminates. This is a problem when commenting out one line in a multi-line command like the example.
Instead, either move the line away from its statement, or use an
`# inline comment`
in an unquoted backtick command
substitution.
None.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.