-
从数据库中获取变量并将其作为环境变量传递给shell进行生成
资源介绍
从DB中取检索值传递给shell,生成环境变量
1. 编写myshellpara.sql
通过spool 执行一个SQL读取所要的值,结果保存在myshellvar_export.sh
set feedback off;
set heading off;
set pagesize 0;
set linesize 1000;
set numwidth 12;
set termout off;
set trimout on;
set trimspool on;
spool myshellvar_export.sh
select '#!/bin/bash' from dual
union all
select 'export my_shell_para='||to_char(count(*))
from yourtable where create_time ='2012.06.09';
spool off
exit
2. 主脚本,连续数据库,执行myshellpara.sql
#!/bin/bash
#Sqlplus user/pwd@ip @myshellpara.sql << EOF $> /dev/null
Sqlplus user/pwd@ip @myshellpara.sql $> /dev/null
chmod 777 myshellvar_export.sh
#注意.这里的技巧,变相执行 myshellvar_export.sh,生成linux 系统的环境变量
source myshellvar_export.sh
echo 'query value from db:'$my_shell_para
3. 结果查看
export $my_shell_para
4.myshellpara2.sh是没有生成环境变量,而是利用了cat 直接读取
5.结束
- 上一篇: linux shell 查询oracle数据库中的值 并返回
- 下一篇: qt线程实例