diff --git a/bin/clean.sh b/bin/clean.sh index 8e39e90..b71b3c1 100644 --- a/bin/clean.sh +++ b/bin/clean.sh @@ -5,6 +5,7 @@ dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) logdir=${dir%/*} screen_name="clean_screen" service_name="raspi_e-Paper.service" +timeout_seconds=10 # 设置超时时间,例如3600秒(1小时) # 停止raspi_e-Paper服务 echo "正在停止$service_name服务..." @@ -16,5 +17,12 @@ for pid in $pids; do screen -S $pid -X quit done -# 创建一个新的screen会话并运行Python脚本 -screen -dmS $screen_name /usr/bin/python3 -u $dir/$f_name > $logdir/log/clean-info.log 2>&1 +# 创建一个新的screen会话并运行Python脚本,并设置超时时间 +timeout $timeout_seconds screen -dmS $screen_name /usr/bin/python3 -u $dir/$f_name > $logdir/log/clean-info.log 2>&1 + +# 检查是否超时并处理 +if [ $? -eq 124 ]; then + echo "脚本运行超时,已终止" +else + echo "脚本运行完成" +fi