Использование спула в сценарии оболочки, но не выводит файл

#shell #sqlplus

#оболочка #sqlplus

Вопрос:

У меня есть хранимая процедура, написанная на SQL, и я пытаюсь записать информацию из этой процедуры в выходной файл, используя сценарий оболочки. Я использую спул, но я не вижу выходной файл после запуска скрипта.

Мой скрипт:

 run_procedure(){
userId="abc"
psswd="abcd"
package="Retrieve_data" 
procedure="RETRIEVE_SERVER_DATA"
echo ${package}.${procedure}
sqlplus ${userId}/${passwd} >dev/null 2>amp;1 <<EOF
set serveroutput on;
set line 7000;
set feedback off;
set termout off;
spool /tmp/test.txt;
EXECUTE ${package}.${procedure};
spool off;
exit;
EOF
)
  

Здесь я вызываю вышеупомянутую функцию:

 if [[ $RETURN -eq 0 ]]; then
run_procedure
fi
  

(Кстати, мой возврат равен 0.)

Комментарии:

1. ваш последний ) , не должен быть } ?

2. да, у меня это есть в моем коде как ‘}’. моя ошибка здесь