Crontab介绍:
crontab是类UNIX操作系统中的一个常用功能,功能上相当于windows下的定时任务,可以周期性的执行某一个操作
相对于at任务的单次执行,crontab是循环性的任务调度,由crond进程调度
相关文件:
/etc/cron.allow | 在Linux系统中,所有允许使用crontab任务的用户会被列在这个文件中,以用户名的形式 |
/etc/cron.deny | 在Linux系统中,所有被尽职使用crontab任务的用户会被列在这个文件中,以用户名的形式 |
/var/adm/cron/cron.deny | AIX和HP-UX中上述文件的存放位置 |
/var/spool/cron/crontabs | 在HP-UX,AIX操作系统中各用户的crontab文件的实际位置,以用户名形式存放 |
/var/spool/cron | 在Linux操作系统中各用户crontab文件的实际位置,以用户名形式存放 |
/etc/crontab | 操作系统级别的crontab存放位置,一般存放一些操作系统的定时任务,例如更新文件库、执行日/天/周/月份任务等等 |
/var/log/cron | Linux操作系统中crontab日志的存放位置 |
/var/adm/cron/log | AIX和HP-UX中crontab日志的存放位置 |
注:/etc/cron.allow和/etc/cron.deny两个文件在此有一定的优先级关系,建议每次只使用一个,其优先级关系在此不做讨论
配置方式:
crontab的配置可以直接通过修改上述的文件进行控制,也可以使用crontab命令进行修改
建议使用crontab命令进行修改,这样在退出的时候会检查当前的配置语法是否正确,从而减少错误率
crontab命令的使用方法如下:
crontab [-u username] [-l|-e|-r]
-u:
-e:
-l:
-r:
crontab命令其实质就是用vi编辑器编辑了个用户的配置文件,vi编辑器的使用在此不做赘述
crontab文件的配置格式:
# Example of job definition:
# .---------------- minute (0 - 59)
# |
# |
# |
# |
# |
# *
特殊符号:
* 星号:代表当前字段的任意时间段
, 逗号:代表分隔当前字段多个时间段
- 减号:代表当前字段的一个时间范围
*/n
例子:
当前有一个业务系统的某一台主机的数据库trc文件产生异常,产生数据量巨大,甚至需要每三个小时清理一次,故要求如下:
写一个清理脚本程序,用crontab进行调用,要求每隔三个小时执行一次
目录:/oracle/app/oracle/admin/sid/udump
$ whoami
$ pwd
$ cat trace_clear.sh
$ chmod 744 /tmp/trace_clear.sh
$ crontab -e
- 上一篇:华为设备端口qos限速控制
- 下一篇:多种操作系统NTP客户端配置
发表评论: