如何在Linux中递归删除所有空文件和目录?

穆罕默德·瓦泽姆

如何递归清除父目录中的所有空文件和目录?

假设我有以下目录结构:

Parent/
  |____Child1/
        |______ file11.txt (empty)
        |______ Dir1/ (empty)

  |____Child2/
        |_______ file21.txt
        |_______ file22.txt (empty)

  |____ file1.txt

我应该以这个结尾:

Parent/
  |____Child2/
        |_______ file21.txt

  |____ file1.txt
菲利普·库林

这是一个非常简单的班轮:

find Parent -empty -delete

这是不言自明的。虽然当我检查时我很惊讶它成功删除了Parent / Child1。通常,除非您指定,否则您希望它先处理父项,再处理子项-depth

这是有效的,因为-delete暗含-depth参见GNU查找手册

-delete删除文件; 如果删除成功,则为true。如果删除失败,则会发出错误消息。如果-delete失败,则find的退出状态将为非零(最终退出时)。使用-delete会自动打开-depth选项。


请注意,这些功能不是Posix Standard的一部分,但很可能将在许多Linux发行版中提供。对于较小的诸如Alpine Linux的操作系统,您可能会有一个具体的问题,因为它们基于不支持的Busybox-empty

那做其他系统包括非标准-empty-delete包括BSDOSX但显然不是AIX

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Linux中按用户获取所有文件和目录

删除文件中的所有空格-Linux

如何在Linux中递归地在目录中找到所有* .js文件?

如何递归列出所有文件和目录

如何递归列出所有文件和目录

如何在bash中递归复制所有目录和文件?

如何递归删除PowerShell中的所有空文件夹?

如何在Notepad ++中从文件中删除所有空格?

使用git时如何查找所有空文件夹和未跟踪的文件?

如何在不删除bash目录的情况下删除目录中的所有文件和子目录?

如何在特定目录中查找所有空文件和文件夹,包括看起来只是空的文件和不是空文件?

如何从目录中删除所有文件?

如何递归访问和删除sh中有空格的特定文件夹中的所有文件?

R:有效删除目录中的所有空文件

如何从Windows计算机上的目录中递归删除所有.DS_STORE文件?

如何删除子树中的所有空目录?

如何递归列出所有隐藏的文件和目录?

如何在递归Grep的目录中查找所有.tex文件?

如何在指定目录中递归列出所需文件类型的所有文件?

如何使用模式匹配和目录递归删除所有文件

如何删除目录中所有空文件?

PHP 删除目录和任何子目录中的所有空文件

如何使用rm命令删除linux中的所有空文件而不管它们的目录

(批量)如何递归删除目录中除以.开头的文件/文件夹之外的所有文件/文件夹?

如何在所有目录中创建一个空文件(0 字节大小)?

c - 如何在c中递归列出目录的所有文件

如何在 Rust 中删除目录中的所有文件而不是目录本身?

Powershell 查找给定文件夹名称中的所有空文件夹和子文件夹

如何递归删除所有“node_modules”目录(或任何目录)的内容,从当前目录开始,留下一个空文件夹?