大鹏一日同风起,扶摇直上九万里。这篇文章主要讲述#yyds干货盘点#批量删除过期文件的方法相关的知识,希望能为你提供帮助。
目录
问题
解决
问题今天遇到一个问题,具体情况如下:目录
/var/www/html/media/chunks/ 中存在很多临时文件,需要进行删除,但是手动删除的话,会非常的慢,首先,我们查看一下3天前都有哪些文件。
命令如下:
find /var/www/html/media/chunks -mtime +3 -name "*.*"【#yyds干货盘点#批量删除过期文件的方法】查询结果部分截图如下:
粗略算了一下,大概上千个。
手动删除的话,估计要等到天荒地老。
解决既然需要根据时间来删除过期文件,那么我们必须要知道一些和时间相关的概念。关于文件的时间信息有三个:atime、mtime、ctime,它们的意思分别是:最近访问时间(access time)、最近更改时间(modify time)和最近状态改动时间(change time)。基于我们的诉求,很明显,我需要使用 mtime 时间。
下面通过一个例子来看一下这三个时间的具体表现形式:
好了,既然明确了需要使用 mtime 时间参数,那么就来看一下如何使用这个命令参数吧。
- 方式一
find . -mtime n其中,n 为数字,意思是在当前目录下 n 天之前的“一天之内”被更改过内容的文件。
- 方式二
find . -mtime +n其中,n 为数字,意思是在当前目录下 n 天之前(不含 n 天本身)被更改过内容的文件名。
- 方式三
find . -mtime -n其中,n 为数字,意思是在当前目录下 n 天之内(含 n 天本身)被更改过内容的文件名。
最后,通过一张图来更加形象的理解 n 的实际含义:
好了,现在可以直接上大招啦:
find /var/www/html/media/chunks -mtime +3 -name "*.*" -exec rm -Rf\\;上述命令的作用就是将三天前查询到的文件都删除。
我们再执行最开始的查询命令,发现文件都已经删除了,截图如下:
?
作者简介:
推荐阅读
- 升级pip并安装库
- #yyds干货盘点#PHP8.0环境详细安装教程
- Redis主从复制集群及数据异常丢失恢复思路#yyds干货盘点#
- JAVA大型互联网架构师涨薪班Java高级架构师四期
- #yyds干货盘点#肝帝一周总结(全网最全最细??Mysql 索引数据结构详解与索引优化??《??记得收藏??》)
- 带你掌握Visual Studio Code的格式化程序
- 一个简单的SSO统一登录设计
- MySQL主从复制之GTID模式介绍
- JavaScript 数据结构之 Set