crontabcontrab命令格式crontab-e(修改crontab任务)、crontab-l(获取定时任务列表)(下图来自网络)常用缩写@hourly/path/to/ntpdate用户控制设置允许或禁止运行crontab的用户/etc/cron.allow/etc/cron.allow任务数据系统级cron任务位于/etc/crontab文件中,典型配置SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/#run-parts01****rootrun-parts/etc/cron.hourly024***rootrun-parts/etc/cron.daily224**0rootrun-parts/etc/cron.weekly4241**rootrun-parts/etc/cron.monthly/etc/cron.hourly,/etc/cron.daily,/etc/cron.weekly,/etc/cron.monthly目录下面的文件将分别按小时、天、周、月周期性运行。必须有执行权限,需要指定相应的环境。比如bash以#!/bin/bash开头,python以#!/usr/bin/pyton开头(#!/usr/bin/envpython)查看对应目录下的定时任务run-parts--test/etc/cron.hourlyrun-parts会执行目录下的所有可执行文件(默认参数情况下文件名必须没有后缀)/etc/crontab文件SHELL没有定义SHELL时使用;当未定义PATH时,必须使用绝对路径;当未定义HOME时,cron将使用调用者的主目录/etc/cron.d目录来存储要执行的任何crontab文件或脚本。文件内容仍然是一系列定时任务(格式同crontab)crontabstatusservicecrondstatus/var/spool/cron和/var/cron/tabs这两个目录不一定存在。定义用户相关的定时任务,比如/var/spool/cron/root,cron启动后每分钟读取这个文件,所以修改文件后不需要重启cron服务。at命令(强调定时执行)at对应的服务是atd,at有一个batch等效体,batch会加入一些控制参数。命令语法允许在/etc/at.allow/etc/at.deny执行的用户手动执行ctrl+d结束编辑。创建任务后,每个任务都有一个id,删除时需要指定。$atnow+1minutesat>echo"Helloworld">test.txtat>job4atTueDec1911:29:002017executescriptatnow+1minute-fscript.shatnow+1minute
