命令格式java
crontab [-u user] file 或者 crontab [-u username] //可选,省略则表示操做当前用户的crontab -e //编辑crontab定时任务 -l //列出crontab里的内容 -r //删除crontab
crontab的命令由时间和命令构成,其时间由分、时、日、月、周五种按顺序排列,操做符有:linux
*:任什么时候间 /:每隔多久 -:连续时间 ,:不连续的时间
实例说明shell
每分钟执行一次命令bash
* * * * * 命令 每小时的第10分钟和第30分钟执行 10,30 * * * * 命令 在8点到10点的每分钟执行 * 8-10 * * * 命令 每个月15号每隔10分钟执行 */10 * 15 * * 命令 每周一的六点三十分执行 30 6 * * 1 命令
/etc/crontab 同时在/etc目录下还存放了/etc/cron.deny 和 /etc/cron.allow 文件 /etc/cron.deny 表示不能使用crontab 命令的用户 /etc/cron.allow 表示能使用crontab的用户。 若是两个文件同时存在,那么/etc/cron.allow 优先。 若是两个文件都不存在,那么只有root用户能够安排做业。
/var/apool/cron/用户服务器
记录是否执行了某些计划的脚本less
$ less /var/log/cron
具体执行是否正确以及脚本执行过程当中的一些信息则linux会每次都发邮件到/var/spool/mail下面命令行
$ cd /var/spool/mail
经过这些就能够判断脚本执行正确与否,及执行过程当中是否正确以及一些错误的信息,除此以外 cron 还能够添加邮件通知日志
#你的命令要在哪运行 SHELL=/bin/bash #为这个shell添加环境变量,如你的命令须要java环境 PATH=$PATH:/your_jdk_path #当运行出错将邮件发送给谁 MAILTO=user_name或者你的qq邮箱
经过这些了解,咱们能够作个调度系统,经过脚本设定定时任务。当我有十几台甚至上百台服务器,经过这个系统,能够极大解放劳动力,便于管理。code