Все решения здесь - хаки.
Ваш файл sql должен выглядеть следующим образом ...
set termout off
set showmode off
set heading off
set echo off
set timing off
set time off
set feedback 0
set pagesize 0
set embedded ON
set verify OFF
spool courses.sh
SELECT 'term="' || sfrstcr_term_code || '";', 'subj="' || sfrstcr_subj_code || '";' FROM sfrstcr WHERE sfrstcr_pidm = 1234567;
spool off
Следующий скрипт оболочки будет считывать и распечатывать переменные среды оболочки.
while read -r row; do
eval "$row"
echo "term=$term";
echo "subj=$subj";
done < courses.sh
Важно, чтобы все переменные были в одной строке, так как команда чтения гарантирует, что вы можете читать каждую строку БД за цикл.