1, 进入 Linux 系统
2, 在任意目录创建一个 sh 后缀的文件, 如:
3, 编辑打开该文件, 如图:
4, 此时按键盘上的 "i" 键或者 "insert" 键, 进入编辑模式
输入:
- #!/bin/sh
- find /data/iqmkj/backup/MySQL -mtime +7 -name "*.sql" -exec rm -rf {
- } \;
参考
- * 5 * * * find /tmp/* -name "yhwl_task.log*" -ctime +3 -exec rm -rf {
- } \;
- * 5 * * * find /home/oraclebackup/* -name "YHBS_*" -ctime +15 -exec rm -rf {
- } \;
表示每天早上六点删除 / root/home/zhang 目录下一天前创建的所有文件, 不删除文件夹 zhang, 如果这个文件夹也要删除的话用 * 6 * * * find /root/home/zhang ctime 1 -exec rm -rf {} \;
* 6 * * *
第一个 * 号表示时间中的 分钟 取值范围: 0-59
第二个 * 号表示时间中的 小时 取值范围: 0-23
第三个 * 号表示一个月中的第几天, 取值范围: 1-31
第四个 * 号表示一年中的第几个月, 取值范围: 1-12
第五个 * 号表示一个星期中的第几天, 以星期天开始依次的取值为 0~7,0,7 都表示星期天
ctime 表示创建时间, 1 表示一天前, 其实 Linux 中不存在文件创建时间, 只有访问时间 (atime), 修改时间 (mtime), 状态改动时间 (ctime)
可以通过命令 stat + 文件路径 查看时间
也可通过命令 touch -t 201212212359 aa (建立文件 aa, 时间是 2012 年 12 月 21 日 23 时 59 分) 修改时间
若是删除目录下的指定文件可以用:
find 对应目录 -mtime + 天数 -name "文件名" -exec rm -rf {} \;
1:+ 才表示之前的
2: 用 - name "New*" 来查找指定文件
3:/* 表示不删除 / tmp 目录
ctime 表示创建时间, 1 表示一天前, 其实 Linux 中不存在文件创建时间, 只有访问时间 (atime), 修改时间 (mtime), 状态改动时间 (ctime)
说明:
"/data/iqmkj/backup/mysql" : 要删除的文件所在的目录.
"+7" : 文件保留天数, 即几天前的文件将被删除.
"*.sql": 删除文件后缀为. sql 的文件.
其他为固定字符.
5: 保存编辑的文件
按一下键盘上的 "esc" 键, 再在当前窗口输入 ":wq". 文件即保存成功并自动退回到主界面.
6, 给文件授权
输入:
chown 777 backup_mysql.sh
如果授权不成功, 则直接选中该文件右键设置权限中全部勾选或者设置 "777".
7: 利用 centos7 的定时任务创建一个定时器
在主界面输入 "crontab -e", 进入定时任务编辑界面.
8, 设置定时任务
插入 "0 4 * * */data/iqmkj/backup/mysql/backup_mysql_clean.sh".
说明:
其中的文件路径为第二步中创建的文件路径.
定时器的配置规则参考: http://blog.csdn.net/foxman209/article/details/6759920
9, 保存定时任务配置
按一下键盘上的 "esc" 键, 再在当前窗口输入 ":wq". 文件即保存成功并自动退回到主界面.
10, 启动定时器
在主界面输入 "/bin/systemctl start crond.service". 至此全部配置完成.
说明:
启动定时任务:/bin/systemctl start crond.service
停止定时任务:/bin/systemctl stop crond.service
重启定时任务:/bin/systemctl restart crond.service
查看定时任务状态:/bin/systemctl status crond.service
----------------
来源: http://www.bubuko.com/infodetail-3336989.html