当我执行"rm -rf data"时删除的顺序是什么?

Ven*_*tta 3 linux bash shell

我不小心rm -rf data在一个巨大的目录中做了一个.我立刻退出了.

该目录具有简单的结构(它们都是日期键控的子目录,如2015/07/06),但目录很大,我不想重新生成整个事物.如果我知道如何rm删除文件,我可以找到并重新生成丢失的文件.

怎么rm -rf去删除文件?

bis*_*hop 7

rm执行深度优先搜索,遍历xfts_open呼叫结果.

FTS是在所有Linux工具中遍历文件的标准方法.您可以编写自己的fts使用者,或者信任输出find,因为它也使用xfts_open.

find .将列出存在的文件.然后,您可以使用您对预期结构的了解来反转缺少的列表.

或者,您可以使用它debugfs来帮助您获取文件.