首页 > 系统相关 >shell脚本之根据文件修改时间,删除目录下多余的文件

shell脚本之根据文件修改时间,删除目录下多余的文件

时间:2024-09-25 11:12:38浏览次数:8  
标签:文件 shell 删除 num 多余 file 目录

shell脚本之根据文件修改时间,删除目录下多余的文件

需求:目录下至保留5个文件。

  该需求一般用于备份,这里使用根据文件的修改时间或者创建时间来判断删除,保留最新的5个文件。

#!/bin/bash
#存放文件的目录
addr="/opt/bak"
#保留最新文件个数
file_save_num=5

#目录下文件总数
file_num=`ls $addr | wc -l`
#文件总数大于保留个数则删除,否则不进行任何操作
if [[ $file_num -gt $file_save_num ]] ;then
    #根据多余的文件数量进行循环
    for (( i=0; i<$(($file_num - $file_save_num));i++ ))
    do
        #获取到最旧的文件名称
        remove_file_name=`ls -t $addr | tail -n 1`
        #删除文件
        rm -f  $addr/$remove_file_name
    done
fi

  注意:该脚本需要目录下为纯文件的场景,并未判断目录的情况。

 

标签:文件,shell,删除,num,多余,file,目录
From: https://www.cnblogs.com/NanZhiHan/p/18430929

相关文章

  • 如何删除 WPS 在图片文件属性中添加的“属性修改”选项卡
    近期发现WPS2023这一个非常恼人的特性,在图片文件的属性窗口里面乱加第三方选项卡。同事的电脑安装了这个版本,就让同事从注册表试了一下。还好金山他们藏的不是很深,借助GPT很快也就找到了。这里再用鄙人自己的虚拟机演示一遍。HKEY_CLASSES_ROOT\*\shellex\PropertySheetHan......
  • C#实现指南:将文件夹与exe合并为一个exe
    在软件开发过程中,有时需要将多个文件(如资源文件、配置文件等)与可执行文件(exe)打包在一起,以便于分发和部署。在C#中,我们可以利用ILMerge或Costura.Fody等工具来实现这一目标。本文将介绍如何使用Costura.Fody来将文件夹与exe合并为一个exe。一、简介Costura.Fody是一个用于.NET应用程......
  • webpack 多个css文件合并成一个
    在Webpack中,将多个CSS文件合并成一个文件通常涉及到使用MiniCssExtractPlugin插件。以下是如何配置Webpack以实现这一目标的步骤:安装必要的插件:首先,你需要安装mini-css-extract-plugin,它用于将CSS提取到单独的文件中。npminstall--save-devmini-css-extract-plugin......
  • 混淆指定js文件
    混淆指定js文件fomartJs.bat@echooffREM定义一个包含文件名的数组setjsFiles=("polyfills.b4665eab.js""manifest.b09f6bad.js""index.f8bec5fb.js")REM遍历数组中的每个文件for%%fin%jsFiles%do(echoProcessing%%f@REMjavascript-obfuscat......
  • Linux操作系统和文件系统、常见命令(下)
    C语言的绝大部分内容应该记录在以.c作为拓展名的文件里,这种文件叫做C语言的源文件C语言程序里还包括以.h作为拓展名的文件,这种文件叫头文件(只有极少数的内容可以记录在头文件里)C语言程序里可以使用数字和加减乘除四则运算符号(*代表乘法,/代表除法)C语言程序里每个计算步骤最后都......
  • 《鸿蒙/Harmony | 开发日志》预览文件
    APP中常有需求就是点击文件打开预览。鸿蒙中,可以借助访问的预览文件服务来实现。测试下来,常见的文档类型txt,doc,excel,ppt,pdf,图片,视频等都是默认可以打开的。遇到不能打开的,界面也会按钮是否使用其他APP来打开。支持的文件类型官方文档列出的支持类型,实际测试下来......
  • 如何设置xshell关闭最后一个选项卡标签时不退出软件?
    不知道你是否遇到这个问题,就是在使用xshell的时候,每次关闭最后一个选项卡标签的时候,xshell软件默认就退出了,好多次我都只是想要关闭,而非退出,所以该如何设置,才能到我们的预期的效果呢?解决办法在工具栏中找到,选项打开。然后再高级选项中找到取消最后一个标签关闭时退出xshell的复选......
  • redis-配置文件解读
    Redis配置文件解读第一节网络配置相关bind绑定连接IP默认情况bind=127.0.0.1只能接受本机的访问请求,不写的情况下,无限制接受任何ip地址的访问,生产环境肯定要写你应用服务器的地址;服务器是需要远程访问的,所以需要将其注释掉.如果开启了protected-mode,那么在没有设定bindip......
  • 深度解读内外网文件传输的技巧和最佳实践
    内外网文件传输在企业运营中的重要性为了保护核心数据,绝大多数企业和机构都在内部实施了内外网分离,比如医院、银行、半导体集成电路公司、生物制药企业、电力公司等等,处在内网的员工,需要将设计图纸、项目资料等文件发送给外网的用户,也需要发给内部不同部门的同事;。客户、供应商、......
  • 大文件去重
    若文件存的字符如下图,要求进行去重可将数据存入HashSet,如下,但如果文件很大,大于虚拟机内存的话,会报异常java.lang.OutOfMemoryError:JavaheapspaceHashSetset=newHashSet();Filefile=newFile("E:\\aa.txt");BufferedReaderreader=new......