linux命令大全:crontab定时任务

Linux系统中, at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron(crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。另外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令。

一、crond简介

crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。 Linux下的任务调度分为两类,系统任务调度和用户任务调度。 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件。 /etc/crontab文件包括下面几行:

[root@localhost yiibai]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

1. For details see man 4 crontabs

1. Example of job definition:
1. .---------------- 分钟(minute) (0 - 59)
1. |  .------------- 小时 hour (0 - 23)
1. |  |  .---------- 一个月中的第几天 day of month (1 - 31)
1. |  |  |  .------- 月份 month (1 - 12) OR jan,feb,mar,apr ...
1. |  |  |  |  .---- 周几 day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
1. |  |  |  |  |
1. *  *  *  *  * user-name  command to be executed

[root@localhost yiibai]#