Windows版本的cron是什么?[关闭]


278

一个谷歌搜索变成了软件执行相同功能的cron,但没有内置到Windows。

我正在运行Windows XP Professional,但是任何版本的Windows的建议都可能对某人有所帮助。

是否还有以编程方式或通过命令行调用此功能(基于答案的任务计划程序)的方法?


5
cron任务计划程序不提供什么功能?
克里斯·杰斯特·杨

2
Cron通过电子邮件将stdout和stderr发送给用户-我们如何在Task Scheduler中做到这一点?
user3450049

@ user3450049:您始终可以在“操作”部分添加任务以通过邮件发送日志。您可以根据需要从Telnet o Sendmail中使用它。见stackoverflow.com/questions/18652001/send-mail-via-cmd-console
0zkr PM

Answers:


294

对于原始问题,询问有关Windows XP(和Windows 7)的信息:Windows Task Scheduler

对于命令行用法,可以使用AT命令进行计划

对于较新的Microsoft OS版本,Windows Server 2012 / Windows 8,请查看schtasks命令行实用程序。
如果使用PowerShell,则将Windows PowerShell中的“ 计划任务” Cmdlet用于脚本编写。


12
在Windows 10 at.exe中已弃用,将无法运行。schtasks.exe难以使用(例如,没有管理员权限就无法运行)和错误(例如,/Z开关)。
VlastimilOvčáčík2015年

Windows 7呢?
塔里克

@Tarik Windows 7也将支持任务计划程序。
Kris Kumler

我的Windows 7 cmd具有AT和schtasks。有区别/偏好吗?为什么两者都有?
jiggunjer '16

7
任务计划程序就是这样的垃圾处理程序。每次我打开它时,都有50/50的机会将整个计算机的帧速率降低到3fps,同时尝试加载类似6个项目的表格视图
Matt


10

'at'命令。

“ AT命令计划在指定的时间和日期在计算机上运行的命令和程序。必须运行Schedule服务才能使用AT命令。”


不建议使用,请使用schtasks.exe。
keramat

10

使用Windows Task Scheduler来安排时间和日期上的任务。


10

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

1
这不是命令线工具。如我所见,它只会检查当前时间是否与您的设置匹配。
秘银

这只是一个解析器,它不执行任务。
Kubuntuer82 '19


7

最接近的等效项是Windows计划任务(控制面板->计划任务),尽管它们与cron相距甚远。

(对我而言)最大的不同是,它们要求用户登录Windows框和用户帐户(带有密码及全部),如果您的本地安全策略要求定期更改密码,那么这将是一场噩梦。我还认为,就设置项目的运行间隔而言,它不如cron灵活。


2
尽管cron绝对胜过Windows任务,但实际上您可以使用计算机的“ SYSTEM”帐户,该帐户不需要密码,并且对本地计算机具有完全权限。尽管如果您使用外部资源(例如,需要域凭据的共享驱动器),这显然会带来问题。
史蒂夫·鲍曼

@SteveBauman关键是本地资源,Windows可能是有史以来最好的任务计划程序,但是如果这些任务只能在本地资源上运行,则如果您需要执行一些简单的操作(如将备份按计划复制到本地PC),则100%无用。
krowe2



6

如果您更喜欢优秀的Cronw那就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

1
我尝试了这个,当我最终安装它并尝试对其进行测试时,我得到的只是以下消息:We were asked to go - so I'm out finally...我尝试的任何命令都向我发送了该消息。WTF?该项目不再活动了吗?或者该消息的含义是什么?谢谢
Metafaniel 2015年

1
@Metafaniel,我大约4到5年没有Windows系统,所以我并没有真正跟上。谷歌搜索该响应只会将我带到此页面,并且他们的网站上没有任何有关关闭的信息。查看sourceforge存储库,看起来它已经十年没有改变了,所以我想知道您的本地系统上是否存在某种冲突?考虑到上一次更新已经有这么长时间了,我可以肯定地说它不再活动了,尽管这是一个非常奇怪的回应。
enobrev

1
@Metafaniel我也下载了该消息并对其进行了grep调试,却一无所获。祝你好运,找出正在发生的事情!
enobrev

1
@Metafaniel如文章中所述,对于XP SP2之后的Windows,不支持此功能。
LoMaPh


2

除了Windows Task Scheduler,您在Windows上也有“ at”。除了它具有命令行界面之外,我不确定它与Task Scheduler有何不同。



1
  1. 您可以将PowerShell中的Scheduled-Tasks API以及config.json文件用于参数输入。我想最小的限制是5分钟。通过API创建非常基本的计划任务的示例教程

  2. 您也可以通过cmd使用schtasks.exe。我可以在执行schtasks.exe / Create /?时看到分钟修饰符限制为1分钟。无论如何,现在不建议使用AT。

在此处输入图片说明

无论如何,我正在研究一种行为类似于CRON的工具。如果成功,我将在这里更新。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.