在linux下有两种方法来让一个命令或者脚本执行:
- crontab : 执行一个任务一次或者多次.
- at : 只执行一次.
crontab是通过读取一个crontab文件来工作,这是一个普通的文本文件,里面列出了要执行的任务。每行都含有要指定的任务的命令、参数与选项,以及要执行任务的时间。(cron 软件在后台运行并且经常检查 /etc/crontab 文件。cron 软件也检查 /var/cron/tabs 目录,搜索新的 crontab 文件。这些 crontab 文件存储一些 cron 在特定时间执行任务的信息。)
crontab的基本格式:
- * * * * * command
几个星号分别为:分 时 日 月 周,最后是要执行的命令。
- 分:0~59
- 时:0~23
- 日:1~31
- 月:1~12
- 周:0~6(0表示星期天)
除了数字还有几个个特殊的符号就是* / - :
- * 代表所有的取值范围内的数字
- / 代表每的意思
- */5 表示每5个单位
- - 代表从某个数字到某个数字
- , 分开几个离散的数字
配置文件的一些例子:
- 0 3 * * * /root/test.sh 每天凌晨3点执行test.sh文件
- * 23-7/1 * * * /root/lnmp restart 晚上11点到早上7点之间,每隔一小时重启lnmp套件
- */30 * * * * /usr/sbin/ntpdate 每半小时同步一下时间
- 0 2