如何定时执行某个程序

289 阅读2分钟

可以使用 Python 的 scheduletime 模块来定时执行某个程序。例如,以下代码可以定时运行指定的程序(比如 .exe 文件、Python 脚本等)。


方法 1:使用 schedule 模块(推荐)

适用于需要 定期 执行任务的情况,如每小时、每天、每周运行一次。

安装 schedule

如果你还没有安装 schedule,请运行:

pip install schedule

示例:每 10 分钟执行一次某个程序

import schedule
import time
import subprocess

def run_program():
    program_path = "C:/path/to/your_program.exe"  # 你要运行的程序路径
    subprocess.run(program_path, shell=True)  # 运行程序

# 每 10 分钟执行一次
schedule.every(10).minutes.do(run_program)

while True:
    schedule.run_pending()
    time.sleep(1)  # 避免 CPU 过载

方法 2:使用 time.sleep() 进行循环执行

适用于简单的定时执行,不依赖 schedule

示例:每小时执行一次

import time
import subprocess

program_path = "C:/path/to/your_program.exe"  # 你的程序路径

while True:
    subprocess.run(program_path, shell=True)  # 运行程序
    print("程序执行完成,等待 1 小时...")
    time.sleep(3600)  # 休眠 3600 秒(1 小时)

方法 3:使用 Windows 任务计划程序Linux crontab(适合长期运行)

如果你希望 每天在固定时间 运行,而不是每隔一段时间,可以使用操作系统的定时任务功能:

  • Windows:使用 任务计划程序(Task Scheduler)
  • Linux:使用 cron 任务

Windows 任务计划

  1. 打开 任务计划程序(Win + R,输入 taskschd.msc)。
  2. 创建任务 > 触发器(设定定时运行的时间)。
  3. 操作 > 选择 启动程序,并选择你的 Python 代码或 .exe 文件。

Linux crontab(每天 10 点运行)

运行 crontab -e,添加:

0 10 * * * /usr/bin/python3 /path/to/your_script.py

总结

方法适用场景代码示例
schedule定期执行任务(如每小时)
time.sleep()简单循环执行
任务计划(Windows/Linux)固定时间运行

如果是 想定时运行 Python 代码,建议 schedule 方法;如果是 系统级任务,建议 任务计划程序cron。🚀