`man bash` , search for "<<" see the "Here Strings" section.
You can also search https://www.google.com/search?q=bash and follow links to "Documentation"
xargs echo <<EOL
> line 1
> line 2
> EOL
line 1 line 2
$ cat <<EOL
> line 1
> line 2
> EOL
line 1
line 2
line-terminators get eaten by xargsWhat is so mystifying about this?
Doing this:
"cat << EOL
line one
line two
EOL"
Would be the same as this:
"cat < file"
That is if 'file' contained this:
"line one
line two"
This doesn't work with the echo command because it does not use stdin like cat does.
For extra credit, try using a "Here Document" as input for 'echo' and 'cat'. Explain the results.