Win32中的计划任务

时间:2009-10-19 19:03:49

标签: python windows-xp scheduled-tasks

我在运行python脚本的WinXP SP2计算机上有一个计划任务:

每日

开始时间: 12:03 AM

每天安排任务:每1天

开始日期:过去一段时间

每5分钟重复一次任务

直到:持续时间24小时

基本上,我希望脚本每五分钟运行一次 我的问题是任务在每晚23:47之后的某个时间运行(大概是在23:55之后)并且之后没有运行。我究竟做错了什么?或者,除了使用Windows计划任务之外,是否有其他方法可以建议?

7 个答案:

答案 0 :(得分:3)

您可以从其他脚本安排它,并在每天或每次重启后启动它:

#!/usr/bin/env python

import subprocess

interval = 300  # secs

while True:
    p = subprocess.Popen(['pythonw.exe', 'foo.py'])
    time.sleep(interval)

这样你也可以做一分钟的间隔。

答案 1 :(得分:1)

在第一个窗格(标记为“任务”)上,您是否取消选中“仅在登录时运行”并选中“已启用(计划任务在指定时间运行”)?

我通过Windows计划任务运行python作业,其设置与您显示的设置非常相似。

答案 2 :(得分:1)

此外,在过去一年左右的时间里,我看到了一个常见的错误,如果启用了以下任一复选框,则Server 2003或XP上的计划任务不会运行:

  • “如果计算机使用电池运行,请勿启动任务”
  • “如果电池模式开始,则停止任务”

如果您的电池(在笔记本电脑上)或UPS(在服务器上),无论您的公用电源是否正常工作,Windows似乎都会感到有些困惑。

此外,作为一项规则,我会减少时间或取消选中“当它运行X分钟时停止任务”,当你经常运行时。

答案 3 :(得分:1)

据我所知,预定任务非常糟糕。你应该使用更好控制的东西,比如

http://cronw.sourceforge.net/或Windows的任何其他cron实现。

答案 4 :(得分:1)

直到:持续时间24小时

在第一天结束时将其关闭。

删除它,看看它是否继续。应该,你不应该在这个过程中安装Python。 :)

答案 5 :(得分:1)

冒着不回答问题的风险,我是否可以建议,如果您必须运行的内容很重要甚至是关键,那么Windows任务调度程序就不是运行它的方法。

使用任务调度程序时有太多可怕的流量。让我们从明显的开始:

没有记录。没有办法调查出现问题时会发生什么。没有办法在PC上分配工作。没有容错能力。它只是Windows,界面很糟糕。

如果上述任何一个问题对你来说都需要更复杂的东西。我的建议是你试试Hudson,a.k.a. Sun的持续集成服务器。

除了上述所有内容之外,它还可以进行cron式调度,日志自动过期。它可以设置为jabber或发送失败的电子邮件,如果你可以使它产生一些XML输出,你甚至可以自动诊断你的进程出了什么问题。

请,请不要使用Windows计划任务。有许多更好的东西可供使用,当我说我从不后悔倾销内置的调度程序时,我会从经验中说出来。

答案 6 :(得分:0)

您运行的是哪个版本的Windows?

您是否选中了“设置”标签以确保取消选中所有选项?

您可能还会考虑功能更丰富的调度程序,例如System Scheduler from Splinterware Software