首页 > 代码库 > Linux查看所有子文件夹及文件的数量

Linux查看所有子文件夹及文件的数量

find命令查看(推荐):

所有子目录的数量:

[root@localhost ~]# find afish -type d | wc -l
158
[root@localhost ~]# find afish/ -type d | wc -l
158
[root@localhost ~]# find afish/* -type d | wc -l
157 --正确

结果不同的原因:
[root@localhost ~]# find afish -type d | more
afish --输出结果首行
[root@localhost ~]# find afish/* -type d | more
afish/examples --输出结果首行

总结:使用afish/*不包含afish这个父目录,只输出其下的子目录。

所有文件的数量:

[root@localhost ~]# find afish -type f | wc -l
981
[root@localhost ~]# find afish/ -type f | wc -l
981
[root@localhost ~]# find afish/* -type f | wc -l
981

tree命令查看(不推荐):

[root@localhost ~]# tree afish
……
157 directories, 978 files
-----------------------------------------
[root@localhost ~]# tree afish/
……
157 directories, 978 files

du命令查看:

[root@localhost ~]# du -ah afish/* | wc -l
1138

总结:du查看的结果为1138,子目录的数量为157,文件数量为:1138-157=981,所以tree命令查看的结果应该是不准确,至于少计算了哪个文件,没再查这个问题,推荐使用find命令查看。

 

Linux查看所有子文件夹及文件的数量