天天看点

Linux 有问必答: 如何在Linux中加入cron任务Linux 有问必答: 如何在Linux中加入cron任务

提问: 我想在我的linux中安排一个计划任务,该任务在固定时间周期性地运行。我该如何在linux中添加一个cron任务?

cron是linux中默认的计划任务。使用cron,你可以安排一个计划(比如:命令或者shell脚本)周期性地运行或者在指定的分钟、小时、天、周、月等特定时间运行。cron在你安排不同的常规维护任务时是很有用的,比如周期性地备份、日志循环、检查文件系统、监测磁盘空间等等。

Linux 有问必答: 如何在Linux中加入cron任务Linux 有问必答: 如何在Linux中加入cron任务

(题图来自 eagleapex.com)

<a target="_blank"></a>

要添加cron任务,你可以使用称为crontab的命令行工具。

输入下面的命令会创建一个以当前用户运行的新cron任务。

$ crontab -e

如果你想要以其他用户运行cron任务,输入下面的命令。

$ sudo crontab -u &lt;username&gt; -e

你将会看见一个文本编辑窗口,这里你可以添加或者编辑cron任务。默认使用nono编辑器。

Linux 有问必答: 如何在Linux中加入cron任务Linux 有问必答: 如何在Linux中加入cron任务

每个cron任务的格式如下。

&lt;分钟&gt; &lt;小时&gt; &lt;日&gt; &lt;月&gt; &lt;星期&gt; &lt;命令&gt;

前5个元素定义了任务的计划,最后一个元素是命令或者脚本的完整路径。

Linux 有问必答: 如何在Linux中加入cron任务Linux 有问必答: 如何在Linux中加入cron任务

下面是一些cron任务示例。

* * * * * /home/dan/bin/script.sh: 每分钟运行。

0 * * * * /home/dan/bin/script.sh: 每小时运行。

0 0 * * * /home/dan/bin/script.sh: 每天零点运行。

0 9,18 * * * /home/dan/bin/script.sh: 在每天的9am和6pm运行。

0 9-18 * * * /home/dan/bin/script.sh: 在9am到6pm的每个小时运行。

0 9-18 * * 1-5 /home/dan/bin/script.sh: 周一到周五的9am到6pm每小时运行。

*/10 * * * * /home/dan/bin/script.sh: 每10分钟运行。

一旦完成上面的设置步骤后,按下ctrl+x来保存并退出编辑器。此时,新增的计划任务应该已经激活了。

要查看存在的计划任务,使用下面的命令:

$ crontab -l

如果你在linux桌面环境中,你可以使用crontab的更加友好的gui前端来添加或者添加一个cron任务。

在gnome桌面中,有一个gnome schedule(gnome-schedule包)。

Linux 有问必答: 如何在Linux中加入cron任务Linux 有问必答: 如何在Linux中加入cron任务

在kde桌面中,有一个task scheduler(kcron包)。

Linux 有问必答: 如何在Linux中加入cron任务Linux 有问必答: 如何在Linux中加入cron任务

----------------------------------------------------------------------------------------------------------------------------

原文发布时间:2015-02-23

本文来自云栖合作伙伴“linux中国”

继续阅读