crontab 命令常见于 Unix 和类 Unix 的操做系统之中(Linux 就属于类 Unix 操做系统),用于设置周期性被执行的指令。该命令从输入设备读取指令,并将其存放于 crontab 文件中,以供以后读取和执行。一般,crontab 储存的指令被守护进程激活,crond 为其守护进程,crond 经常在后台运行,每一分钟会检查一次是否有预约的做业须要执行。shell
经过 crontab 命令,咱们能够在固定的间隔时间执行指定的系统指令或 shell script 脚本。时间间隔的单位能够是分钟、小时、日、月、周的任意组合。vim
经过下面一个命令来添加一个计划任务编辑器
crontab -eurl
该任务是每分钟咱们会在/home/shiyanlou目录下建立一个以当前的年月日时分秒为名字的空白文件spa
*/1 * * * * touch /home/shiyanlou/$(date +\%Y\%m\%d\%H\%M\%S)
“ % ” 在 crontab 文件中,有结束命令行、换行、重定向的做用,前面加 ” \ ” 符号转意,不然,“ % ” 符号将执行其结束命令行或者换行的做用,而且其后的内容会被作为标准输入发送给前面的命令。操作系统
vim编辑器:插入 i;退出:Esc-->WQ-->ctrl+zz命令行
经过这样的一个指令来查看咱们添加了哪些任务日志
crontab -lcode
虽然咱们添加了任务,可是若是 cron 的守护进程并无启动,它根本都不会监测到有任务,固然也就不会帮咱们执行,咱们能够经过如下2种方式来肯定咱们的 cron 是否成功的在后台启动,默默的帮咱们作事,如果没有就得执行上文准备中的第二步了regexp
ps aux | grep cron 或者 pgrep cron
咱们经过这样一个命令能够查看到执行任务命令以后在日志中的信息反馈
sudo tail -f /var/log/syslog
删除任务
crontab -r
每一个目录的做用:
系统默认执行时间能够根据需求进行修改
crontab时间格式内容
* * * * * command
M H D m d command
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令或脚本内容