删除超过5天的文件夹

斯图尔特

我有一个备份文件夹,而不是使用日历之类的文件夹结构来组织文件。我想每5天删除一次,但是由于主文件夹早于5天,所以最终删除了完整备份。

资料夹结构:

Backup
    -> 2017
          -> October
                 -> 28
                 -> 29
                 -> 30
                 -> 31
          -> November
                 -> 1
                 -> 2
                 -> 3

我试过运行此命令:

find /mnt/backup/* -type d -mtime +5 -execdir rm -rf {} \;

但是它将删除目录2017,因为它早于5天,这意味着它将删除所有子文件夹。我只想删除这里已有5天的目录。例如,如果今天是11月3日,我只想删除目录28和29。然后,当它成为11月5日时,我希望删除整个10月目录,因为其中的所有内容现在都将超过5天。有什么建议么?

谢谢

muru

使用-mindepth 1如果你不想2017被感动:

$ mkdir -p foo/2017/{October/{28..31},November/{1..3}}
$ touch -d 'now - 6 days' foo/2017/October/{28,29} foo/2017
$ find foo/* -mindepth 1 -mtime +5
foo/2017/October/28
foo/2017/October/29
$ find foo/* -mtime +5
foo/2017
foo/2017/October/28
foo/2017/October/29

如果从而foo不是从开始foo/2017,请使用-mindepth 2

$ find foo/ -mindepth 2 -mtime +5
foo/2017/October/28
foo/2017/October/29

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

删除超过1天的文件夹

如果文件夹名称超过30天,则删除

删除文件夹及其子文件夹中超过7天的文件

删除 /tmp 中超过一天的所有文件和文件夹

在超过20天的文件夹中查找tar.gz文件并删除

Php - 删除多个文件夹中超过 7 天的文件

如何删除超过一天的文件夹?(Cron Job)

bash脚本删除name_date超过90天的文件夹

Cron 作业自动删除 Centos 中超过 7 天的文件夹

你能帮我写一个脚本(在 Powershell 上制作)来删除超过 5 天的特定文件夹的文件(最终是子文件夹)吗?

从超过 X 天的 S3 存储桶中删除文件夹、子文件夹和所有文件

Powershell - 如果没有文件夹或没有超过 30 天的文件夹,则跳过

查找和删除x天之前的文件或文件夹

如果文件夹日期为30天,则删除文件夹和文件

如何使用骆驼删除早于某些天的文件夹

Google云端硬盘:删除1天以上的文件夹

删除超过500天的文件

删除文件夹,但保留20天最新,为期7天

如果文件夹的总大小超过10G,则删除文件夹中最早的文件

如果文件夹长度超过限制,则删除文件夹中的第一个文件

批处理文件,用于删除/删除xx天前的文件夹

用于删除/删除 xx 天以前的文件夹的批处理文件

Powershell脚本删除x天之前的文件,但不删除文件夹

Linux-复制包含子文件夹的文件夹,但不要复制任何超过5MB的文件

如何显示将超过 1 天的文件从一个文件夹复制到另一个文件夹的进度?

删除HDFS上超过10天的文件

删除超过15天的* .ZIP文件

自动删除超过10GB的文件夹中的所有文件?

删除名称超过256个字符的隐藏文件夹/文件