KSH - 退出前捕获脚本的返回代码

时间:2012-05-07 18:03:02

标签: ksh

在KSH中,如何捕获EXIT信号并获取脚本的退出代码?

以下测试输出“关于退出脚本,返回码为0”。我想让它从exit命令的返回码输出4。

#!/usr/bin/ksh

trapped_exit() {
 typeset rc=$1

 echo "(LOG SCRIPT EXECUTION & RETURN CODE)"

 echo "About to exit script with return code $rc."
}

trap 'APP_RC=$?; trapped_exit $APP_RC' EXIT

exit 4

1 个答案:

答案 0 :(得分:0)

我估计我可以将exit命令别名为我自己的函数。在这个函数中,我将通过比较先前定义的全局变量来验证退出命令是从我的进程ID而不是子进程调用的。如果它来自我的PID,我将运行我的清理代码。最后用相同的args调用真正的exit命令。