每天要运行的定时任务, 时间很长, 有一天突然被中断了, 如果能有个中断提醒就好了


在这个脚本中,我们使用

sleep 命令模拟一个长时间运行的任务,并在后台运行它。然后,通过

wait 命令等待任务完成或被杀死,并检查

wait 命令的退出状态码来判断脚本是否被

kill 终止。

#!/bin/sh

# 定义一个变量来标记脚本是否被信号杀死
killed=0

# 捕获 SIGTERM 信号
#trap 'echo "Caught SIGTERM signal!"; killed=1; exit 1' SIGTERM
trap 'echo "脚本中断";curl -X POST -H "Content-Type: application/json"   -d "{\"msg_type\":\"text\",\"content\":{\"text\":\"脚本中断提醒\"}}" https://open.feishu.cn/open-apis/bot/abc;killed=1; exit 1' SIGTERM

# 模拟一些长时间运行的任务
echo "Running..."
sleep 10

# 脚本正常结束
echo "正常运行结束"

# 检查脚本是否被信号杀死
if [ $killed -eq 1 ]; then
    echo "脚本被杀死"
else
    echo "脚步退出,status $?."
fi