问题描述
我想查找一个文件夹及其所有子文件夹下的文件总数。
最佳解决方法
可能是类似的东西
find . -type f | wc -l
会做的伎俩。尝试从父文件夹中的命令。
次佳解决方法
使用tree
命令。您可能需要安装tree
软件包。
它将列出给定文件夹下的所有文件和文件夹,并在最后列出摘要。
第三种解决方法
要计算当前目录根目录下的文件(甚至没有扩展名的文件),请使用:
ls -l | grep ^- | wc -l
要从当前目录的根目录递归地计算文件(甚至没有扩展名的文件),请使用:
ls -lR | grep ^- | wc -l
第四种方法
最快和最简单的方法是使用tree
。速度受到输出终端的限制,所以如果您将结果传输到tail -1
,您将得到直接结果。您还可以使用-L
选项来控制您喜欢结果的目录级别。对于彩色输出,请使用-C
。例如:
$ tree share/some/directory/ | tail -1
558 directories, 853 files
$ tree -L 2 share/some/directory/ | tail -1
120 directories, 3 files
如果它不在那里,你可以得到它here。
第五种方法
find -type f -printf . | wc -c
不要计算find的输出行,因为包含99个换行符的文件名将计为100个文件。