在linux下我们有时候会用到定时的执行一些命令,如果使用人工定时操作的话很不方便。还好linux中为我们提供了一个很好的工具。vi打开/etc/crontab我们可以看到:
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
这是系统默认为我们设置的每小时执行/etc/cron.hourly、每天04:02执行/etc/cron.daily、每周日04:22执行/etc/cron.weekly、每月一号04:42执行/etc/cron.monthly
所以,如果我们想每天执行一次某个操作的话,我们就可以把命令写在/etc/cron.daily里面。
比如我们想没晚对__processed_stats目录里面文件进行清空,我们就在/ect/cron.daily加入以下代码:
rm -Rf /home/admin/__processed_stats/*
这样没晚04:02会自动清空__processed_stats文件夹内容。同样我们也可以直接在/etc/crontab中直接写上:
02 4 * * * root rm -Rf /home/admin/__processed_stats/*
也可以达到同样的效果。
其中crontab基本格式如下:
基本格式 :
* * * * * 用户 command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令