from flask import Flask, render_template_string, jsonify import subprocess import threading app = Flask(__name__) # HTML 页面 HTML_PAGE = """
正在加载日志...""" # Web 界面 @app.route('/sync') def sync_page(): return render_template_string(HTML_PAGE) # 启动同步 @app.route('/start_sync', methods=['POST']) def start_sync(): def run_sync(): subprocess.run(["/bin/bash", "sync_now.sh"]) threading.Thread(target=run_sync, daemon=True).start() return jsonify({"status": "success", "message": "手动同步开始,请等待..."}) # 获取日志内容 @app.route('/logs') def get_logs(): try: with open("/tmp/sync_log.txt", "r", encoding="utf-8") as f: return f.read() except FileNotFoundError: return "暂无日志..." # 启动 Flask if __name__ == '__main__': app.run(host="0.0.0.0", port=8080)