【发布时间】:2011-08-02 20:17:31
【问题描述】:
我的 Linux 主目录中允许的文件数量几乎达到了我的限制,我很好奇所有文件的位置。
在任何目录中,我可以使用例如find . -type f | wc -l 来显示该目录及其子目录中有多少文件,但我想要的是能够生成所有子目录的完整列表(和子子目录等),每个文件都有 count 包含在其中的所有文件和 其 子目录 - 如果可能,按数量降序排列。
例如,如果我的文件结构如下所示:
Home/
file1.txt
file2.txt
Docs/
file3.txt
Notes/
file4.txt
file5.txt
Queries/
file6.txt
Photos/
file7.jpg
输出会是这样的:
7 Home
4 Home/Docs
2 Home/Docs/Notes
1 Home/Docs/Queries
1 Home/Photos
非常感谢任何建议。 (也是答案的快速解释,所以我可以从中学习!)。谢谢。
【问题讨论】:
-
是什么让您认为您接近每个目录的文件限制?我知道的每个目录的文件的任何限制都不需要计算每个子目录的文件,只需要直接在这个目录中的文件......可能你的意思是“每个分区的索引节点”?
-
我认为这是我在系统上拥有的文件总数(这是系统管理员给出的解释的要点......)。我想要的是查找是否有一个大文件夹,里面装满了我可以删除的旧缓存文件或日志或崩溃报告。
-
... 例如在名为
.../.metadata/.plugins/org.eclipse.epp.usagedata.recording的隐藏文件夹中的 10000 个文件 - blimey! -
du ~/* | sort -n会给你一个目录大小的排序列表,这可能也很有用 -
谢谢@otto,很高兴知道这一点。
标签: linux unix shell command-line