在特定时间运行一次作业

在特定时间运行一次作业

我正在尝试创建一个将在特定时间运行一次的 cron。

为简单起见,我如何创建一个在晚上 11:57 运行并在屏幕上打印“Hello”然后自行删除的 cron?(Cent OS 5)

答案1

如果您只需要运行一次,那么 cron 就不适合您使用。

at (1)               - queue, examine or delete jobs for later execution

例如:

# at 12:57PM
warning: commands will be executed using /bin/sh
at> echo hello
at> <EOT>
job 2 at Mon Jan  2 12:57:00 2012

(输入命令后按 ctrl+d)

相对于现在的安排

fbh@pinky:~$ at now + 5 min
warning: commands will be executed using /bin/sh
at> echo moo
at> <EOT>
job 5 at Mon Jan  2 06:05:00 2012

和往常一样,您可以在手册页中阅读有关如何使用此工具的更多信息。

答案2

如果你使用,命令的输出将通过电子邮件发送给您。要将文本输出到当前终端,请执行以下操作:

echo "echo 'hello' > `tty`" | at 11:57PM
echo "echo 'hello' > `tty`" | at now + 5 minutes

请注意,当你使用现在 + x 分钟,执行时间将四舍五入到前一分钟。

相关内容