通过谷歌搜索可以找到与cron功能相同的软件,但没有内置在Windows中。

我使用的是Windows XP Professional,但任何版本的Windows建议都可能对某些人有所帮助。

是否也有一种方法以编程方式或通过命令行调用此功能(基于答案称为任务调度器)?


对于最初的问题,询问Windows XP(和Windows 7): Windows任务调度器

对于命令行使用,您可以使用AT命令进行调度。

对于较新的微软操作系统版本(Windows Server 2012 / Windows 8),请查看schtasks命令行实用程序。 如果使用PowerShell, Windows PowerShell中的计划任务cmdlet是为脚本编写的。

使用Windows任务计划程序按时间和日期安排任务。

'at'命令。

AT命令调度命令和 在计算机上运行的程序 指定的时间和日期。日程安排 服务必须正在运行才能使用AT 命令。”

Windows中的“AT”命令与cron非常相似。可以通过命令行访问。

除了Windows任务调度器,Windows上还有“at”。除了它有一个命令行界面之外,我不确定它与任务调度器有什么不同。

最类似的是Windows的计划任务(控制面板->计划任务),尽管它们与cron相差甚远。

最大的区别(对我来说)是它们要求用户登录到Windows系统,以及一个用户帐户(包括密码和所有内容),如果您的本地安全策略要求定期更改密码,这将成为一场噩梦。我还认为,就设置项目运行的间隔而言,它不如cron灵活。

是否也有一种方法以编程方式调用这个功能(基于答案被称为任务调度器)[…]?

MSDN上的任务调度程序API。

如果你更喜欢好的cron, CRONw是你的选择。

Supported systems

* Windows 2000 (any version)    works
* Windows XP (SP 2)             works
* Windows Server 2003           works
* Windows NT 4 (SP 6)           should work but not tested
* Windows 3.11, Windows 95,
  Windows 98, Windows ME,
  Windows XP beneath SP2        not supported by design

Zcron可供个人免费使用。

不是一个确切的Windows版本,但是你可以使用Cygwin的crontab。有关安装说明,请参见这里:这里。

pycron与Windows非常匹配。支持以下表项:

1    Minute (0-59)
2    Hour (2-24)
3    Day of month (1-31)
4    Month (1-12, Jan, Feb, etc)
5    Day of week (0-6) 0 = Sunday, 1 = Monday etc or Sun, Mon, etc)
6    User that the command will run as
7    Command to execute

Windows有NNCron。IT部门可以定期安排作业运行。

At命令现在已弃用

你可以使用SCHTASKS

您可以在PowerShell中使用计划性任务API以及配置。Json文件用于参数输入。我想最低限度是5分钟。一个通过api创建非常基本的计划任务的示例教程 你也可以通过cmd使用schtasks.exe。我可以看到在执行schtasks.exe /Create /?时,分钟修饰符限制为1分钟。无论如何AT现在已弃用。

无论如何,我正在开发一个像CRON一样的工具。如果成功,我会在这里更新。

在https://github.com/mgefvert/Cronical上查看优秀的Cronical程序

它是一个. net程序,读取带有类unix cron行的文本文件。使用非常方便。如果stdout,它会像unix cron一样发送电子邮件。它甚至支持充当服务运行器。