更新时间:2023-12-04 19:04:28
第二次尝试
根据反馈,以前在 EXIT 上使用陷阱的解决方案效果不佳.替代方案,基于使用 PROMPT_COMMAND 似乎可以提供更好的里程.
Based on feedback, previous solution using trap on EXIT does not work well. Alternative, based on using PROMPT_COMMAND seems to give better mileage.
基本逻辑:
#! /bin/bash
function pre_cmd {
START=$SECONDS
}
function log_exit {
if [ "$((SECONDS-START-TMOUT))" -ge 0 ] ; then
echo "TIMEOUT"
else
echo "Normal Exit"
fi
}
TMOUT=15
PROMPT_COMMAND=pre_cmd
trap 'log_exit' EXIT