Linux 下的 crontab知识点介绍.docx
Linux 下的 crontab 知识点介绍 crontab 是 Linux 下的一个守护进程,用于周期性的执行某种任务或等待处理某些事件。它与 Windows 下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动 crond 进程。crond 进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。 crontab 的用途非常广泛,常见的有定时数据备份、定时系统检测、定时数据收集、定时更新配置、定时生成报表等等。 crontab 的使用格式有两种:crontab [-u user] [file] 和 crontab [-u user] [-e|-l|-r |-i]。其中,-u user 用来设定某个用户的 crontab 服务,file 是命令文件的名字,-e 用来编辑某个用户的 crontab 文件内容,-l 用来显示某个用户的 crontab 文件内容,-r 用来删除某个用户的 crontab 文件,-i 用来在删除用户的 crontab 文件时给确认提示。 crontab 文件的语法规则是,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段。时间设定段包括 minute、hour、day、month、week 五个字段,它们可以使用星号、逗号、中杠、正斜线等特殊字符来指定时间的间隔频率和范围。 在企业实际应用中,crontab 的应用非常广泛,常见的有定时数据备份、定时系统检测、定时数据收集、定时更新配置、定时生成报表等等。 下面是一些 crontab 例子: * 0 /3 /usr/local/apache2/apachectl restart:每隔 3 个小时重启 apache 服务一次。 * 30 3 6 /webdata/bin/backup.sh:每周六的 3 点 30 分执行/webdata/bin/backup.sh 脚本的操作。 * 0 0 1,20 fsck /dev/sdb8:每个月的 1 号和 20 号检查/dev/sdb8 磁盘设备。 * 10 5 /5 * echo "">/usr/local/apache2/log/access_log:每个月的 5 号、10 号、15 号、20 号、25 号、30 号的 5 点 10 分执行清理 apache 日志操作。 系统级任务调度中,crontab 的应用也非常广泛,常见的有系统数据备份、系统检测、系统配置更新等等。