【发布时间】:2011-06-30 16:50:24
【问题描述】:
是否可以从该用户运行的 perl 脚本控制用户 crontab 条目?假设我要读取、写入和删除条目。
我查看了 Schedule::Cron 并不太明白。我是否正确假设它与每个用户的实际 crontab 无关?
另外,关于 Schedule::Cron,它只是一个必须始终在系统上运行的程序是否正确?因此,如果系统被关闭并再次打开,那么它将不会运行(与 cron 不同 - 当然,除非程序是由不同的系统调度程序启动的,例如 Cron;在这种情况下,它的意义何在?)
理想情况下,我想在带有任务调度程序的 Windows 系统上做同样的事情。
关键是控制调度行为的脚本(无论是 crontab 本身还是类似 crontab 的行为)需要能够退出,并且 cron 条目应该保留。这是因为脚本将在控制 GUI 的事件循环中调用,因此如果用户退出 GUI,程序需要退出,但用户创建的 cron 作业需要保留。同样,如果 GUI 重新启动(并且事件循环重新启动),应该可以编辑和删除计划任务。
(编辑:Schedule::At for one off jobs 在 *Nix 系统上看起来业务。但是仍然在 Windows 上苦苦挣扎 - Win32::AdminMisc 和 Win32:TaskScheduler 模块看起来不再需要维护)
【问题讨论】:
-
Schedule::Cron 只是将 cron 的功能带入您的 perl 脚本。现在它与 cron 守护进程交互。因此,当您的脚本退出时,将不再调用任何操作。