目标 实现记录SHELL执行的开始时间,结束时间,运行状态,错误信息等,以函数封装日志记录的方式,脚本调用函数 源码 通用函数脚本program_log_new.sh function init_log(){sqlplus -S test/passw0rd@orcl EOFinsert into program_log values($id,$day,$1, s
目标
实现记录SHELL执行的开始时间,结束时间,运行状态,错误信息等,以函数封装日志记录的方式,脚本调用函数
源码
通用函数脚本program_log_new.sh
function init_log(){sqlplus -S test/passw0rd@orcl <<EOFinsert into program_log values($id,$day,'$1', sysdate,null,'S',null);commitexitEOF}function modify_status(){sqlplus -S test/passw0rd@orcl <<EOFupdate program_log set program_status='$1',end_date=sysdate where id=$id;commitexitEOF}function ex<a>本文来源gao($daima.com搞@代@#码8网^</a>ception_write(){if [ $? -ne 0 ]then modify_status $status2exit 1fi}function finish_write(){if [ $? -eq 0 ]then modify_status $status1#modify_status $1 $2 $3 else# modify_status $1 $2 $3 modify_status $status2exit 1fi}status1=Cstatus2=Fday=`date "+%Y%m%d"`id=`sqlplus -S user/1234@test <<EOFset heading offselect program_log_seq.nextval from dual;commitexitEOF`
#!/bin/sh. ~/.bash_profilesource program_log_new.sh //公用脚本init_log sh_xx //初始化日志函数调用,传入程序名shell命令xxx 2>${logdir}/xx_$time.log exception_write //发生异常,调用异常,程序退出shell命令xxx 2>${logdir}/xx_$time.log exception_write //发生异常,调用异常,程序退出....shell命令xxx 2>${logdir}/xx_$time.log finish_write //发生异常,调用异常,程序退出