shell 脚本中 : set -x 是开启, set +x是关闭

set -e 表示有报错即退出, set +e 表示关闭这种设置。 set -e 等价于 set -o errexit , set +e 等价于 set +o errexit

示例

Exit immediately if any untested command fails

  1. set -o errexit
  2. ...... 很多shell脚本。

到了需要获取rman 子脚本的报错返回值,不能报错马上退出,这里 Disable set -e

  1. set +o errexit
  2. nohup rman cmdfile=restore_ctrl.dat log=restore_ctrl.log

Collect error message if rman command failed .

  1. if [ "$?" != "0" ]; then
  2. echo "Restore controlfile failed, please check the log file: $RMAN_BACKUP_PATH/script/restore_ctrl.log ."
  3. cat restore_ctrl.log
  4. exit
  5. else
  6. echo "Control file is restored . "
  7. fi

Enable set -e

  1. set -o errexit

原文

作者:tolywang 来自:ITPUB博客 链接:http://blog.itpub.net/35489/viewspace-1799248/ 如需转载,请注明出处,否则将追究法律责任。