查找文件夹和子文件夹中的文件数量?
我想查找文件夹及其所有子文件夹下的文件数的总数。
可能是这样的
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
如果它还没有,你可以在这里得到它。
find -type f -printf . | wc -c
不计算find的输出行,因为包含99个换行符的文件名将计为100个文件。
对路径中的每个文件夹使用此命令
for D in *; do echo $D; find $D -type f| wc -l; done
find似乎比树快,所以我用下面的方法计算当前工作目录的每个目录中的文件(忽略CWD中的文件),允许目录有空格:
ls -d */ | while read dir_line do echo -n "$dir_line :" find "$dir_line" -type f | wc -l done
我自己也选择这个选项:
ls -alR | grep -c ^ –
你可以使用find . | wc -l
find . | wc -l
find .
将列出从当前文件夹开始的所有文件和文件夹以及theire内容。
wc -l
计算find的结果