script bash não continua após executar a consulta com sqlplus

script bash não continua após executar a consulta com sqlplus

aqui estou tentando executar uma consulta normal com sqlplus e despejar o resultado em um arquivo CSV, então tenho outro trabalho a fazer, estou enfrentando um problema meu script não continua após executar a consulta sqlplus ele apenas visualiza o resultado e despeja a saída em csv, mas ele não continua e também não sei como despejar os dados sem ver o resultado

#!/bin/bash

cd /dir/test_dir

    sqlplus -s test/test <<EOF
    set colsep ,
    set underline off,
    set headsep off,
    set feedback off,
    set long 99999,
    set linesize 32767,
    set trimspool on,
    spool report(date +%Y-%m-%d).csv
    select a.s, a.d, a.t, a.ww, a.tt from test a;
    exit;
    EOF
cd ../

mkdir test/
.
.
.

Responder1

A linha contendo EOFcomespaços em branco iniciaisnão encerra o documento aqui iniciado com <<EOF. Use EOFsem espaços em branco iniciais. Em vez de

    EOF

você deveria usar

EOF

Como alternativa, altere a linha com redirecionamento para sqlplus -s test/test <<-EOFe, em seguida, recue com tabulações.

Se o operador de redirecionamento for <<-, todos os caracteres de tabulação iniciais serão removidos das linhas de entrada e da linha que contém o delimitador. Isso permite que os documentos aqui dentro dos scripts de shell sejam recuados de maneira natural.

(fonte)

informação relacionada