Files
2025-12-26 13:19:56 +08:00

59 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
# 学籍号刷新快速执行脚本
# 用法: ./run_refresh.sh [once|monitor|bg]
# 参数说明:
# once - 一次性刷新所有学籍号(默认)
# monitor- 持续监控模式,前台执行
# bg - 持续监控模式,后台执行
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SCRIPT_FILE="${SCRIPT_DIR}/process_student_id_card_refresh.sh"
if [[ ! -f "$SCRIPT_FILE" ]]; then
echo "错误:主脚本文件 $SCRIPT_FILE 未找到!"
exit 1
fi
# 检查参数
MODE="${1:-once}"
echo "==============================================="
echo "学生学籍号刷新脚本"
echo "执行模式: $MODE"
echo "时间: $(date '+%Y-%m-%d %H:%M:%S')"
if [[ "$MODE" == "bg" ]]; then
echo "运行方式: 后台守护进程"
else
echo "运行方式: $([[ "$MODE" == "monitor" ]] && echo "前台守护进程" || echo "一次性执行")"
fi
echo "==============================================="
case "$MODE" in
"once")
echo "执行一次性刷新模式..."
"$SCRIPT_FILE" once
;;
"monitor")
echo "执行持续监控模式(前台)..."
"$SCRIPT_FILE"
;;
"bg")
echo "执行持续监控模式(后台)..."
echo "日志文件: ${SCRIPT_DIR}/student_id_card_refresh/process_student_id_card_refresh_$(date +%Y%m%d)_*.log"
nohup "$SCRIPT_FILE" > /dev/null 2>&1 &
echo "脚本已启动后台运行,PID: $!"
echo "使用 'ps aux | grep process_student_id_card_refresh' 查看运行状态"
echo "使用 'pkill -f process_student_id_card_refresh' 停止脚本"
;;
*)
echo "用法: $0 [once|monitor|bg]"
echo " once - 一次性刷新所有学籍号(默认)"
echo " monitor- 持续监控模式,前台执行"
echo " bg - 持续监控模式,后台执行(推荐)"
exit 1
;;
esac