linux如何定时删除N天前的文件(文件夹)

 更新时间:2023年12月12日 15:35:37   作者:wd520521  
这篇文章主要介绍了linux如何定时删除N天前的文件(文件夹)问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

在业务中,给定的磁盘容量小,为了避免爆盘,需要定时清除数据,所以总结了一下设置方法:

可以使用find命令

find 路径 -mtime +天数 -type d -name "文件名" -exec rm -rf {} ;
 
find 路径 -mtime +15-type d -name "*" -exec rm -rf {} ;
find /tmp -mtime +15 -type d -name "*" -exec rm -rf {} \;
/tmp --设置查找的目录;
-mtime +15 --设置修改时间为15天前;
-type d --设置查找的类型为文件;其中f为文件,d则为文件夹
-name "*" --设置文件名称,可以使用通配符;
-exec rm -rf --查找完毕后执行删除操作;
 {} \; --固定写法

还可以把此命令写入脚本中

1、创建脚本cleandata.sh

vim cleandata.sh

2、写入命令

find /tmp -mtime +15 -type d -name "*" -exec rm -rf {} \;

3、保存文件

按Esc键
 
:wq  #保存

4、配置可执行

chmod u+x ./cleandata.sh

 5、配置到crontab

crontab -e
#每天九点十五自动执行
15 9 * * *  /home/test/cleandata.sh > /dev/null 2>&1

*号解释:

  • 第一个*号表示时间中的 分钟  取值范围:0-59
  • 第二个*号表示时间中的 小时  取值范围:0-23
  • 第三个*号表示一个月中的第几天,取值范围:1-31
  • 第四个*号表示一年中的第几个月,取值范围:1-12
  • 第五个*号表示一个星期中的第几天,以星期天开始依次的取值为0~7,0、7都表示星期天

以上已经配置完成,亲测有效 

linux定时删除时间格式文件夹

#!/bin/bash
 
function deletedir(){
    ago_file=$(date -d '30 days ago' +%Y%m%d)
        dir_or_file=$1
        if [ -d $dir_or_file ]
        then
            for element_date in `ls $dir_or_file`
            do
                dir_or_file_date=$dir_or_file"/"$element_date
                if [ -d $dir_or_file_date ]
                then
                        date_file=$(date -d $element_date +%Y%m%d)
                        if [ $date_file -lt $ago_file ]
                        then
                                rm -rf $dir_or_file_date
                        fi
                fi
            done
        fi
}
root_dir="/data0/test"
deletedir $root_dir

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • linux 定时休眠的实现思路

    linux 定时休眠的实现思路

    这篇文章主要介绍了linux 定时休眠的实现思路,休眠的类型有三种类型,文章对每种类型介绍的都很详细,需要的朋友可以参考下
    2018-07-07
  • Linux内核启动参数详解

    Linux内核启动参数详解

    Linux内核在启动的时候,能接收某些命令行选项或启动时参数。当内核不能识别某些硬件进而不能设置硬件参数或者为了避免内核更改某些参数的值,可以通过这种方式手动将这些参数传递给内核。
    2017-10-10
  • 详解CentOS8更换yum源后出现同步仓库缓存失败的问题

    详解CentOS8更换yum源后出现同步仓库缓存失败的问题

    这篇文章主要介绍了详解CentOS8更换yum源后出现同步仓库缓存失败的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Linux常用查看硬件设备信息命令大全(值得收藏)

    Linux常用查看硬件设备信息命令大全(值得收藏)

    本文是小编收藏整理的关于linux查看硬件设备信息的命名,非常不错,值得收藏,需要的朋友参考下吧
    2016-12-12
  • Ubuntu16.04修改开机密码方式

    Ubuntu16.04修改开机密码方式

    文章主要介绍了如何在Ubuntu系统中使用命令行进入恢复模式,并修改启动项以解决特定问题,最终实现系统重启并成功登录
    2026-01-01
  • Linux系统安装Samba服务器实现过程

    Linux系统安装Samba服务器实现过程

    本文介绍了如何在CentOS7系统上安装和配置Samba服务器,以实现Windows和Linux系统之间的文件共享
    2026-02-02
  • ubuntu vi编辑器修改文件的基本操作指令详解

    ubuntu vi编辑器修改文件的基本操作指令详解

    Vi编辑器是命令行文本编辑器,具有丰富的功能,但也可能对初学者有一定的学习曲线,以下是一些基本操作指令:打开文件、保存文件、退出Vi编辑器、保存并退出、插入文本、删除文本、复制和粘贴文本、移动光标、搜索文本、替换文本,Vi还有更多功能和快捷键,需要一些时间来熟悉
    2026-01-01
  • Linux使用Crontab定时访问某个路由地址的方法

    Linux使用Crontab定时访问某个路由地址的方法

    我们很多工作都是需要在某个特定的时间去执行它,下面这篇文章主要给大家介绍了关于Linux使用Crontab定时访问某个路由地址的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-06-06
  • Ubuntu20.04安装配置GitLab的方法步骤

    Ubuntu20.04安装配置GitLab的方法步骤

    这篇文章主要介绍了Ubuntu20.04安装配置GitLab的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Linux中进程在后台可靠运行的方法总结

    Linux中进程在后台可靠运行的方法总结

    本篇文章主要给大家介绍了Linux中进程在后台可靠运行的方法以及示例代码分析,一起学习参考下吧。
    2017-12-12

最新评论