UNIX SIGNAL TO AUTOSYS



我们有一堆Java进程要在AUTOSYS服务器的不同时间运行。大多数 Java 进程没有 exit 语句,因此我们编写了很少的停止作业,如在 shell 脚本中,以终止在预定停止时间运行的进程。当我们终止这些进程时,Autosys作业状态设置为"已终止",因此我们会收到警报。

目前,我们正在使用 KILL -9 PROCESS_ID命令来终止将 autosys 作业设置为 TE 的进程。

是否有任何 UNIX 命令可以顺利退出进程,以便将 AUTOSYS 状态更改为 SU(成功)?。

最简单的方法是将 java 的调用包装在一个读取终止退出代码的 shell 脚本中,并在读取表示信号终止的退出代码时,然后以 0 返回代码退出。

例如

#!/bin/bash -p
java dothestuff
rc=$?
if [ $rc -eq 130 ]; then
    echo "Killed by SIGINT"
    exit 0
fi
exit $rc

最新更新