You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Joachim Ansorg edited this page Nov 12, 2021
·
2 revisions
Redirecting to echo, a command that doesn't read stdin. Bad quoting or missing xargs?
Problematic code:
echo<<eof Hello Worldeof
Correct code:
cat <<eof Hello Worldeof
Rationale:
You are redirecting to one of several commands that don't read from stdin.
This may happen when:
Confusing one command for another, e.g. using echo where cat was intended.
Incorrectly quoting angle brackets, e.g. using echo
Hello
which tries to read from a file p.
Missing xargs, e.g. mv -t dir < files instead of xargs mv -t dir < files (or more safely, tr '\n' '\0' < files | xargs -0 mv -t dir), because stdin should be passed as parameters.
Check your logic, and rewrite the command so data is passed correctly.
Exceptions:
If you've overridden a command to return output, you can either rename it to make this obvious, or ignore this message.