#!/bin/sh # 加载公共函数库 . /app/common.sh echo "[定时更新] $(date) 开始检测新版本..." # 获取最新版本号 ftag_name=$(get_latest_version) if [ -z "$ftag_name" ]; then echo "[定时更新] 无法获取最新版本号" exit 0 fi echo "[定时更新] 最新版本: ${ftag_name}" # 读取当前版本 current_version=$(get_current_version) echo "[定时更新] 当前版本: ${current_version}" if [ "$current_version" = "$ftag_name" ]; then echo "[定时更新] 已是最新版本,无需更新" exit 0 fi echo "[定时更新] 发现新版本,开始下载..." if download_version "$ftag_name" "$MIXAPI_NEW"; then echo "[定时更新] 下载完成,准备热更新..." # 查找并停止旧进程 OLD_PID=$(find_mixapi_pid) if [ -n "$OLD_PID" ]; then echo "[定时更新] 停止旧版本进程 (PID: $OLD_PID)..." kill "$OLD_PID" sleep 2 fi # 替换二进制文件 mv "$MIXAPI_NEW" "$MIXAPI_BIN" save_version "$ftag_name" echo "[定时更新] 启动新版本..." "$MIXAPI_BIN" & echo "[定时更新] 新版本已启动 (PID: $!)" else echo "[定时更新] 下载失败" fi