$crontab -l -- 列出当前用户的crontab任务
no crontab for flagonxia
$date
2009年 04月 03日 星期五 12:10:35 CST
$crontab -e
20 12 * * 1-5 find $HOME/temp -print -exec touch {} /; -- 周一到五执行find命令
首次执行上面的命令,需要选择编辑器(select-editor),一般选/bin/nano。
在/var/spool/cron/crontabs中增加了一个flagonxia文件。 注意,目录crontabs只有root用户能够进入。
root:/var/spool/cron/crontabs #ls -l *
-rw------- 1 flagonxia crontab 285 2009-04-03 12:13 flagonxia
root:/var/spool/cron/crontabs #cat flagonxia
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.i7a5RH/crontab installed on Fri Apr 3 12:13:26 2009)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
# m h dom mon dow command
20 12 * * 1-5 find $HOME/temp -print -exec touch {} /;
我们回到flagonxia用户的主目录,在~/temp中检查文件的修改时间有没有在12:20pm发生改变。
/temp $ ls -l *
-rw-r--r-- 1 flagonxia flagonxia 0 2009-04-03 12:20 1.tmp
-rw-r--r-- 1 flagonxia flagonxia 0 2009-04-03 12:20 2.tmp
-rw-r--r-- 1 flagonxia flagonxia 0 2009-04-03 12:20 3.tmp
-rw-r--r-- 1 flagonxia flagonxia 0 2009-04-03 12:20 4.tmp
删除用户的crontab任务。
$ crontab -ri -- i: 在删除前要求用户确认
在/var/spool/cron/crontabs中文件flagonxia被删除。
如何把crontab任务放在自己的文件里?
/home/flagonxia/home $ vi flagonxia_cron
20 12 * * 1-5 find $HOME/temp -name '*tmp' -print -exec touch {} /;
/home/flagonxia/home $ crontab flagonxia_cron -- 载入系统crontab文件中
检查flagonxia默认的crontab文件是否加入了设置的任务。
/var/spool/cron/crontabs # ls
flagonxia
/var/spool/cron/crontabs # cat flagonxia
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (flagonxia_cron installed on Fri Apr 3 12:37:43 2009)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
40 12 * * 1-5 find $HOME/temp -name '*tmp' -print -exec touch {} /;
在12:40分时,果然任务运行了。