V tomto vláknu askTom na vracení hodnot z SQL*Plus do skriptu shell .
Jedním z běžných přístupů je vybrat konstantní token kromě hodnoty, kterou chcete vrátit (v Tomově příkladu je to řetězec „KEEP“), a poté pomocí sed (nebo vašeho oblíbeného analyzátoru příkazového řádku) extrahovat data, která 'skutečně mě zajímá
#!/bin/ksh
x=`sqlplus / <<endl | grep KEEP | sed 's/KEEP//;s/[ ]//g'
select 'KEEP' , max(sal) from emp;
exit
endl`
echo the answer is $x
Jiné přístupy, jako jsou přístupy, které vám umožňují číst více řádků výstupu jsou také diskutovány v tomto vlákně.
Pokud nechcete, aby se záhlaví tisklo, měli byste zadat
set head off
ve vašem skriptu SQL*Plus-- Nejsem si jistý, proč ve skriptu explicitně nastavujete záhlaví, pokud záhlaví nechcete... Chcete si ponechat nějakou část záhlaví?