Linux 删除早于相同时间的文件

Posted

技术标签:

【中文标题】Linux 删除早于相同时间的文件【英文标题】:Linux Delete Files Older Than and the Same Time Smaller Than 【发布时间】:2021-06-08 15:43:01 【问题描述】:

我使用此命令删除超过 90 天的 MP3 文件。

find MP3/ -type f -name "*.mp3" -mtime +90 -delete

我想让它删除那些超过 3 天但文件大小小于 100KB 的文件。

如何编写< 100KB 的参数和-size 好走还是我应该使用其他东西据我所知文件大小本身与磁盘上的大小不同...

find MP3/ -type f -name "*.mp3" -mtime +3 -size xxx -delete

非常感谢!

【问题讨论】:

不,这不会删除“超过 90 天”的文件。大多数文件系统不存储文件的创建时间,这只会找到那些在 90 天前最后修改的文件。也许这只是迂腐,但认为文件系统存储文件的创建时间太常见了,只要它抬起丑陋的头就应该解决。 @WilliamPursell 我已经在使用它(在 Vicidial 服务器上),其中所有文件的创建/修改日期与通话录音相同。它已经根据需要工作了,我只是想稍微调整一下。 【参考方案1】:

简单地使用 -size 应该适合您的用例。整个命令如下所示:

find MP3/ -type f -name "*.mp3" -mtime +3 -size -100k -delete

【讨论】:

感谢您的帮助,我认为 -100k 将作为参数处理,例如 -name, -size ...

以上是关于Linux 删除早于相同时间的文件的主要内容,如果未能解决你的问题,请参考以下文章

删除 zip 存档中“早于”的文件

Linux下如何寻找相同文件?

Linux shell:定时删除指定时间之前的文件

linux 系统中软连接的创建,修改,删除

NFS 时间间隔过长

删除早于几天的邮件 - 使用 MAP 的时间戳