删除所有旧文件,文件夹和子文件夹的命令

维塔利·维特连科(Vitalii Vitrenko)

我需要一个命令来删除所有更新时间不超过31天的文件,文件夹和子文件夹。我尝试了这个

find . -mindepth 1 -mtime +31 -exec rm -rf "{}" \;

但是如果我有这样的等级制度

.
├── old_sub_folder1
└── old_sub_folder2
    ├── old_file
    └── old_sub_folder3
        └── new_file

old_*旧文件夹\文件在哪里new_file是新文件。

此命令将删除所有内容。因为创建old_sub_folder2后日期未更新new_file

我需要一个不会删除old_sub_folder2 / old_sub_folder3 / new_file的命令

吉列尔梅·科斯塔(Guilherme Costa)

问题是您将-r选项添加到了rm命令中。即使文件夹不为空,这也会删除这些文件夹。

您需要分两步执行此操作:

  1. 只删除旧文件

    find . -type f -mtime +31 -delete

  2. 要删除所有旧文件夹,如果它们是空的,我们可以在这里进行窥视,并对其进行一些调整:

    find . -type d -empty -mtime +31 -delete

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Mac上从命令行删除当前文件夹和所有子文件夹中的.DS_STORE文件

所有文件夹和子文件夹的列表

如何删除.camel子文件夹中的旧文件?

Powershell:将所有文件从文件夹和子文件夹移至单个文件夹

从文件夹和子文件夹加载所有文件

Git将文件夹视为文件,并忽略所有子文件夹和-files

以cmd列出所有文件夹和子文件夹,但不列出文件

将文件复制到文件夹和所有子文件夹中

在具有特定扩展名的所有文件夹和子文件夹中运行命令

遍历文件夹和子文件夹中的所有文件并获取创建日期

如何最好地删除文件夹及其子文件夹中的所有文件

一键关闭所有打开的文件夹和子文件夹

查找和删除文件夹及其子文件夹中所有不带扩展名的文件

删除文件夹及其子文件夹中的所有文件

读取文件夹和子文件夹中的所有文件-进度和大小

如何使用PowerShell从文件夹和所有子文件夹中删除所有访问规则?

批。批量重命名文件夹和所有子文件夹中的文件

如何检查所有文件夹和子文件夹是否都不为空?

如何删除文件夹中除最新X子文件夹以外的所有子文件夹?

Xampp htdocs文件夹,子文件夹和所有文件的权限

如何从目录和子文件夹中删除所有名为“ Sample”的文件夹?

递归清除其中没有文件的文件夹中的所有文件夹和子文件夹

获取文件夹和子文件夹中所有.txt文件的路径

如何通过覆盖现有文件夹来复制文件夹并删除Linux中的所有旧内容?

删除文件夹中不包含子文件夹的文件夹中的旧文件

删除所有子文件夹中的`target`文件夹

Gitignore用于文件夹和子文件夹中的所有文件

Powershell命令/脚本来搜索和删除文件夹和子文件夹

Ansible:删除文件夹内的所有文件和目录,而不是文件夹本身