< <(cmd)
, not
<< (cmd)
.while read -r line
do
echo "You said: $line"
done <<(cmd)
while read -r line
do
echo "You said: $line"
done < <(cmd)
When redirecting <
from a process substitution
<(cmd)
, make sure there is a space between the two
<
characters as shown in the example.
With a space cmd1 < <(cmd2)
, is correctly
interpreted as "run cmd1, reading stdin from cmd2, without forking for a
pipeline".
Without a space, <<
is incorrectly considered a
here document, and (cmd2)
is an invalid delimiter
token.
None
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.