Você também deve ter recebido outro erro, que talvez seja mais informativo:
/home/terdon/scripts/b.sh: linha 49: aviso: aqui-documento na linha 21 delimitada pelo fim do arquivo (desejado 'EOF')
/home/terdon/scripts/b.sh: linha 50: erro de sintaxe: fim de arquivo inesperado
Seu erro é que você tem espaços antes da string que termina o heredoc. Para dar um exemplo simples, isso se queixa:
#!/bin/bash
cat << EOF
hello
EOF
Mas isso não acontece:
#!/bin/bash
cat << EOF
hello
EOF