Search code examples
bashechoeof

Bash here document produces no output, any idea why?


On my Acer 725 with Lubuntu 13.04 this little script:

#!/bin/bash

echo "======"
echo <<xxxxx
aaaaaaaaaqqqqqqqqq
xxxxx
echo "======"

produces this output:

======

======

It should produce this:

======
aaaaaaaaaqqqqqqqqq
======

I've searched all over for a reason but I can't find anything. I have a horrible feeling that I am missing something embarrassingly obvious.

Any ideas?


Solution

  • I have a horrible feeling that I am missing something embarrassingly obvious.

    Use cat instead of echo:

    cat <<xxxxx
    aaaaaaaaaqqqqqqqqq
    xxxxx