Linux中定时删除超过指定大小的文件夹
背景: 开发环境总是动不动就没有空间了, 大部分都是debug日志。所以有必要在日志很疯狂的时候,删除不必要的日志。
思路:一、 书写删除日志文件脚本; 定时任务执行。 但是有时候的日志是需要保存用来查询的。所以不完美。
二、 删除脚本保存,定时任务去查询系统空间是否到达临界值,到达则删除,否则不进行任何操作。
日志删除脚本:
#!/bin/sh
date "+%Y-%m-%d %H:%M:%S"
echo ==========before rm==========
df -h
echo
echo current dir size:
du -sh
echo find /logs -name "log.out.*" -user $USER -exec rm -f {} \;
find /logs -name "log-201*.out" -user $USER -exec rm -f {} \;
find /logs -name "facade.out.*" -user $USER -exec rm -f {} \;
find /logs -name "monitorlog.out.*" -user $USER -exec rm -f {} \;
find /logs -name "monitordetaillog.out.*" -user $USER -exec rm -f {} \; find /logs -name "catalina.out.*" -user $USER -exec rm -f {} \;
find /logs -name "catalina.2*" -user $USER -exec rm -f {} \; if [ ! -f .cleanFile.sh ]; then
echo "cat /dev/null>\$1">.cleanFile.sh
chmod +x .cleanFile.sh
fi find /logs -name "catalina.out" -user $USER -exec ./.cleanFile.sh {} \;
find /logs -name "log.out" -user $USER -exec ./.cleanFile.sh {} \; echo ==========after rm===========
df -h
echo
echo current dir size:
du -sh
echo
定时删除任务:
* * * /logs/rmlog.sh>>/logs/rmlog.sh.log
指定大小删除的定时任务:
# 查询使用多少空间
mya="df -h | sed -n '3p;' | awk '{print $2}' | sed 's/G//'" # 如果空间不够,则执行日志删除脚本
awk 'BEGIN{ if($mya>34){cmd="sh /logs/rmlog.sh"; system(cmd);}else{cmd="echo nothing"; system(cmd);}}' # 定时任务
*/ * * * * awk 'BEGIN{ if($mya>34){cmd="sh /logs/rmlog.sh"; system(cmd);}else{cmd="echo nothing"; system(cmd);}}'
欢迎交流!!!
Linux中定时删除超过指定大小的文件夹的更多相关文章
- Linux下面自动清理超过指定大小的文件
Linux下面自动清理超过指定大小的文件 思路:1)查找test目录下的所有的文件2)判断是否大于100M3)大于100M则清空 以byte为单位显示文件大小,然后和100M大小做对比. 100M换算 ...
- SecureCRT SSH Linux中不显示彩色 字体颜色、文件夹和文件显示的颜色区别开解决办法
SecureCRT SSH Linux中不显示彩色 字体颜色.文件夹和文件显示的颜色区别开解决办法 实验环境: 刚开始我的情况是这样的:带颜色的显示不出来,然后还能看到,此处有内容,猜测是Secure ...
- Linux下自动清理超过指定大小文件
作者:邓聪聪 扫描某个目录下的文件,发现超过指定大小即清空 1)扫描目录下的文件 2)判断文件大小 3)清空大于指定文件的内容 以byte为单位显示文件大小,然后和20M大小做对比. 20M换算成字节 ...
- Linux下自动清理超过指定大小文件的方法
由于线上业务用的squid,根据经验值如果长时间运行则缓存目录下的swap.state会慢慢变大,一旦超过60M,squid的性能就会急剧下降,因此需要定时去清理大于60M的swap.state文件. ...
- Centos 建一个指定大小的文件夹
1.使用ramdisklinux可以把一部分内存mount为分区使用,通常为称为ramdisk,分为ramdisk, ramfs, tmpfs.可以一条命令实现我们的需求:mount none tes ...
- 从Windows10中彻底删除【3D对象】文件夹
Remove "3D object" folder from My Computer Windows Registry Editor Version 5.00 [-HKEY_LOC ...
- Linux下删除空文件,删除指定大小的文件
Linux下批量删除空文件(大小等于0的文件)的方法: find . -name "*" -type f -size 0c | xargs -n 1 rm -f 用这个还可以删除指 ...
- linux中find批量删除空文件及空文件夹
linux下批量删除空文件(大小等于0的文件)的方法 代码如下 复制代码 find . -name "*" -type f -size 0c | xargs -n 1 rm -f ...
- linux生成指定大小的文件(转)
# dd if=/dev/zero of=50M.file bs=1M count=50在当前目录下生成一个50M的文件 虚拟块设备文件更通用的名称是硬盘镜像文件(Hard Disk Image),但 ...
随机推荐
- 专访阿里资深研发工程师窦贤明:PG与商业数据库差距并不明显
窦贤明认为, 支持类型.功能和语法丰富,性能优良 9月24日,窦贤明将参加在北京举办的线下活动,并做主题为<Greenplum分片案例分析>的分享.值此,他分享了PG.工作上的一些经历 ...
- Linux kernel pwn notes(内核漏洞利用学习)
前言 对这段时间学习的 linux 内核中的一些简单的利用技术做一个记录,如有差错,请见谅. 相关的文件 https://gitee.com/hac425/kernel_ctf 相关引用已在文中进行了 ...
- spring <context:annotation-config/> 注解作用
<context:component-scan>包含<context:annotation-config/>的作用 <context:annotation-config/ ...
- java实现Kafka生产者示例
使用java实现Kafka的生产者 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 3 ...
- 用JS实现的常见几种排序算法
1.快速排序法 function quickSort(a) { if (a.length <= 1) { return a; } var midLength = Math.floor(a.len ...
- 离线安装SharePoint2016
离线安装SharePoint2016的过程中,遇到了不少问题,该文章将安装过程尽量详细描述,供自己后续参考,请不要嫌文章啰嗦哈. 本人使用的是Windows Server 2012 R2 Standa ...
- 如何进行 Python性能分析,你才能如鱼得水?
[编者按]本文作者为 Bryan Helmig,主要介绍 Python 应用性能分析的三种进阶方案.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 我们应该忽略一些微小的效率提升,几乎在 9 ...
- Android组件系列----Activity组件详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...
- HTML--<frameset>標簽
<html><frameset rows="20,80"> <frame src="/example/html/frame_a.html&q ...
- 使用Docker构建AspNetCore应用
#Build Image Stage FROM microsoft/aspnetcore-build:2 AS build-env WORKDIR /api # 以下为优化还原,因为项目文件不常变动D ...