ttvc_all 2019-11-19 10:03 采纳率: 50%
浏览 620
已结题

shell执行sqlplus 无法截获oracle的报错?

#!/bin/bash
#连接数据库函数
sqlplus -S $etl_user/$etl_pwd@$etl_tns << EOF
set heading off
set feedback off
set pagesize 0
set verify off
set echo off
set line 10000
set trimspool on
set trimout on;
set termout off;
spool ${json_file}
whenever sqlerror exit sql.sqlcode
@${varsql}
spool off
EOF
num2="$?"
if [ ${num2} -eq 0 ];then
#创建文件
echo "执行数据调度成功"
else
rm -rf ${json_file}
echo "执行数据调度失败,退出"
exit 255
fi

不会打印出‘执行数据调度失败,退出’,直接退出脚本了

  • 写回答

1条回答 默认 最新

  • dabocaiqq 2019-11-20 00:06
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题