linux定时任务

crontab指令

crontab –e :编辑用户我的的定时执行任务,若是文件不存在会自动建立shell

crontab –l : 显示 crontab 文件。 bash

crontab -r : 删除 crontab 文件。code

crontab -ir : 删除 crontab 文件前提醒用户。crontab

使用crontab -e建立文件后,文件的每一行都表示一个定时执行的任务ip

每一行的格式:file

{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} im

minute: 区间为 0 – 59 shell-script

hour: 区间为0 – 23 数据

day-of-month: 区间为0 – 31 脚本

month: 区间为1 – 12. 1 是1月. 12是12月. 

Day-of-week: 区间为0 – 7. 周日能够是0或7.

举个例子:

每隔5分钟执行usercnt.sh脚本:*/5 * * * * /root/usercnt.sh

“*”表示全部。"/"表明每的意思, "/5"表示每5个单位

"-"表明从某个数字到某个数字, ","分开几个离散的数字。

应用实例

天天凌晨删除某个文件夹中三天前的数据

crontab写法:0 0 * * * /home/wb.luozixi/del-files-3-days-ago.sh

表示天天的零点零分执行del-files-3-days-ago.sh

删除三天前数据的脚本del-files-3-days-ago.sh

#!/bin/bash
find /home/xxx/files -mtime +3 -name "*" -exec rm -rf {} \;

-mtime +3表示3天前的文件

也能够用-name "*.log"表示全部的log文件

{}表示用find指令找到的文件或文件夹名称

;表示使用-exec执行的指令的结尾,为了避免让shell误解要加一个转义字符\,这样它才可以传递给find指令

相关文章
相关标签/搜索