在 Windows 中设置 cron 作业
Posted
技术标签:
【中文标题】在 Windows 中设置 cron 作业【英文标题】:Setting up a cron job in Windows 【发布时间】:2011-11-03 23:04:33 【问题描述】:我必须每天从 SFTP 服务器下载文件。我有从服务器检索文件的程序,但我正在考虑设置一个 cron 作业(或类似的东西)来自动化它。我们是一家 Windows 商店,需要。
【问题讨论】:
【参考方案1】:http://windows.microsoft.com/en-US/windows7/schedule-a-task
也许这将有助于 Windows 计划任务...
【讨论】:
【参考方案2】:有pycron,我真的将它作为 Windows 的 Cron 实现,但还有内置的调度程序,它应该可以很好地满足您的需要(控制面板 -> 计划任务 -> 添加计划任务)。
【讨论】:
该链接似乎有效,它需要到下载页面。 pypi.org/project/python-crontab 似乎是一个维护的解决方案。【参考方案3】:相当于 cron 作业的窗口是计划任务。
可以按照Alex 和Rudu 的描述创建计划任务,但也可以使用schtasks
进行命令行操作(例如,如果您需要编写脚本或将其添加到版本控制中)。
一个例子:
schtasks /create /tn calculate /tr calc /sc weekly /d MON /st 06:05 /ru "System"
创建任务计算,它会在每周一的 6:05 启动计算器(calc)(如果你需要的话。)
所有可用的命令都可以在这里找到:http://technet.microsoft.com/en-us/library/cc772785%28WS.10%29.aspx
它适用于 windows server 2008 和 windows server 2003。
【讨论】:
感谢您的回答。有什么方法可以在终端上查看当前活动的任务? 我喜欢这个!谢谢你把它放在这里。 @gberth schtasks /query 显示所有这些。文档显示了更多选项。 @Casivio 感谢您的提示!【参考方案4】:-
确保您以管理员身份登录,或者您拥有与管理员相同的访问权限。
开始->控制面板->系统和安全->管理工具->任务计划程序
操作->创建基本任务->输入名称并点击下一步
按照向导进行操作。
【讨论】:
或者直接运行Win+R
然后执行taskschd.msc
有没有办法导入/导出windows计划任务?
@MáximaAlekz 是的。任务计划程序中的操作菜单 -> 导入/导出。这将是一个 xml 文件。【参考方案5】:
如果您不想使用Scheduled Tasks,您可以使用Windows Subsystem for Linux,这样您就可以像在Linux 上一样使用cron 作业。
要确保 cron 实际运行,您可以在 Linux 终端中键入 service cron status
。如果它当前没有运行,那么输入service cron start
,你应该很高兴。
【讨论】:
【参考方案6】:我要感谢@Vincent Stevenson,@s-hunter
转到Control Panel --> Administrative Tools --> Task Scheduler--> Create Task
任务计划程序,创建任务
给任务一个标题
转到操作
去CMD找路径,
Python,导入 sys,sys.executable
(这会告诉您应该在 Program/script 字段 中填充什么内容:“some path 主要是 Appdata")
喜欢:C:\Users\admin\AppData\Local\Programs\Python\Python38-32\python.exe
参数:python脚本的名称(如run.py)
Start in:python脚本的dir位置(如:C:\Users\admin\Documents\my_python_project)
转到触发器,根据需要安排时间
通过运行脚本来测试它
【讨论】:
以上是关于在 Windows 中设置 cron 作业的主要内容,如果未能解决你的问题,请参考以下文章