定时删除3天前的所有日志文件:

1、例:脚本对应的要删除的目录为/home/logs
在home目录创建文件clearLogFiles.sh:
cd /home
vim clearLogFiles.sh
写入脚本内容
(type f 表示值删文件,不删文件夹)
(-mtime +2 表示更新时间为3天前)
(| xargs 不能查到名字有空格的文件)

#!/bin/bash
find /home/logs/ -type f -mtime +2 | xargs rm -f

如果日志后缀都为.log,则按照名字删除
#!/bin/bash
find /app/logs/ -name "*.log" -mtime +2 | xargs rm -f

如果日志名称有空格,则使用-exec
#!/bin/bash
find /home/backups -mtime +2 -name "*.*" -exec rm -rf {} \;

Linux 自动删除N小时或分钟前的文件
Linux下自动删除2小时之前的日志文件
find /home/log/ -mmin +120 -name "*.log" -exec rm -rf {} \;
执行完上面的命令后,在/home/log/目录下所有的120分钟或者说2小时以前生成的或者更改过的以.log结尾的日志文件都会被删掉。

如果要删除两小时之内的日志文件,使用下面的命令:
find /home/log/ -mmin -120 -name "*.log" -exec rm -rf {} \;
将上面的find命令加到Linux系统的任务计划crontab里,即可实现自动定时删除文件。

2、为脚本增加可执行权限
chmod +x clearLogFiles.sh

3、编辑定时任务
crontab -e

#设置每天凌晨3点30执行
30 3 * * * sh /home/clearLogFiles.sh

查看定时任务
crontab -l
30 3 * * * sh /home/clearLogFiles.sh

直接执行一次试一试:
/home/clearLogFiles.sh

最新文章

  1. 30天的php学习之路——第一天开端
  2. Java常用的技术网站
  3. ios中自定义cell 设置cell的分组结构
  4. hdu 1513
  5. Android——微信界面(简易版)
  6. HTML的disabled属性及readonly属性
  7. 下拉刷新--第三方开源--PullToRefresh
  8. hibernate数据库配置
  9. C# 缓存学习总结
  10. EasyWebServer编写CGI程序的环境变量
  11. intial-scale=1的含义
  12. 第一次在gitHub上传项目到git.oschina的方法
  13. jpgraph 折线图--解决中文乱码的问题(标题和图例)
  14. 基于Servlet+jsp的web计算器
  15. java常使用的框架
  16. Spring Boot中使用Swagger2构建RESTful APIs
  17. Eclipse报错:An internal error has occurred. Widget is disposed
  18. Python继承扩展内置类
  19. 记JS一个错误,
  20. LVS 之搭建

热门文章

  1. 第一个HTML
  2. 【项目实战】CNN手写识别复杂模型的构造
  3. 使用Gitlab CI/CD功能在本地部署 Spring Boot 项目
  4. Elasticsearch 索引生命周期管理 ILM 实战指南
  5. Elasticsearch集群规模和容量规划的底层逻辑
  6. Init Container(初始化容器)
  7. Pod的dns记录怎么组成的
  8. Intellij IDEA个人常用快捷键
  9. 绝杀processOn,这款UML画图神器,阿里字节都用疯了,你还不知道?
  10. uoj349【WC2018】即时战略