我有一个由sql命令填充的shell脚本环境变量 sql命令返回3列的多个记录。我需要传递给另一个shell脚本的每条记录。
QUERYRESULT=`${SQLPLUS_COMMAND} -s ${SQL_USER}/${SQL_PASSWD}@${SQL_SCHEMA}<<endl
set heading off feedback off
select col1, col2, col3
from mytable
where ......)
order by ......
;
exit
endl`
echo ${QUERYRESULT}
输出所有列的单行空格分隔,所有变量都保证不为空
val1 val2 val3 val1 val2 val3 val1 val2 val3 ......
我需要为每条记录调用以下内容
nextScript.bash val1 val2 val3
我也可以运行查询,但计算记录以确定我需要调用nextScript.bash的次数。
关于如何从多个3参数的单个env变量到我执行下一个脚本的任何想法?
答案 0 :(得分:1)
不使用变量:
( ${SQLPLUS_COMMAND} -s ${SQL_USER}/${SQL_PASSWD}@${SQL_SCHEMA}<<endl
set heading off feedback off
select col1, col2, col3
from mytable
where ......)
order by ......
;
exit
endl
) | while read line;do echo $line; done