定时任务
定时任务,定时任务
Crontab ----Quick Reference 快速上手
功能:要求系统在指定的时间,自动执行某个操作或者任务.由cron守护进程(clock daemon)来实现,cron进程每分钟被唤醒一次,查看一下crontab中是否有需要执行的命令.
以Solaris为例
限制:1.如果你的用户名出现在/usr/lib/cron/cron.allow中, 你就能够执行Crontab命令, 如果系统没有cron.allow这个文件, 则如果你的名字没有出现在/usr/lib/cron/cron.deny中, 你就能够执行Crontab命令.如果没有cron.allow文件,但是有cron.deny文件,但是cron.deny文件为空则所有人都可以执行crontab命令
如果上面两个文件,系统都没有,则只有root可以执行Crontabl.
这两个文件的格式是: 每行一个用户名
命令:利用EDITOR环境变量来指定crontab的编辑器, 如果想使用vi来编辑,命令如下:#export EDITOR=vi
crontab -e #编辑你的crontab文件,如果不存在,则创建一个新的crontab文件crontab -l #显示你的crontab文件crontab -r #删除你的crontab文件crontab -v #显示你最后一次修改crontab文件的时间(仅少数系统支持该命令)
crontab文件语法
* * * * * command to be executed - - - - - | | | | | | | | | +----- 星期 (1 - 7) (monday = 1) | | | +------- 月 (1 - 12) | | +--------- 天 (1 - 31) | +----------- 时 (0 - 23) +------------- 分 (0 - 59)
例子: 1. 每天下午6:30,删除 /home/someuser/tmp下的所有文件 30 18 * * * rm /home/someuser/tmp/* 2. 每天下午6:30, 和每天下午6:50, 删除 /home/someuser/tmp下的所有文件 30,50 18 * * * rm /home/someuser/tmp/*
3.每天18:10,将/export/home下的大于1M的普通文件拷贝到/export/home/yang/cron下
10 18 * * * /usr/bin/find /export/home -type f -size +1048576c -exec cp {} /export/home/yang/cron ;