#!/usr/bin/env python # -*- coding: utf-8 -*- """ 主入口 """ import sys import cron.tasks # 加载任务列表(同时检测数据库) from cron.scheduler import start_scheduler, list_jobs, run_job def main(): if len(sys.argv) > 1: cmd = sys.argv[1] if cmd == "jobs": print("任务列表:") for name, cron, enabled in list_jobs(): status = "启用" if enabled else "禁用" print(f" - {name}: {cron} [{status}]") elif cmd == "run": if len(sys.argv) > 2: job_name = sys.argv[2] start_date = sys.argv[3] if len(sys.argv) > 3 else None end_date = sys.argv[4] if len(sys.argv) > 4 else start_date group_id = sys.argv[5] if len(sys.argv) > 5 else None print(f"运行任务: {job_name}") run_job(job_name, start_date, end_date, group_id) else: print("用法: python main.py run [start_date] [end_date] [group_id]") else: print(f"未知命令: {cmd}") print("用法:") print(" python main.py # 启动调度器") print(" python main.py jobs # 查看任务列表") print(" python main.py run clinic_log # 运行指定任务") else: start_scheduler() if __name__ == "__main__": main()