Linux/Linux 统计某个文件夹的文件数量

Linux/Linux 统计某个文件夹的文件数量

ls -l命令可以列出当前目录的文件详细信息。


有时文件太多,我们想统计当前目录下有多少个文件时。可以配合使用wc命令。

wc命令可以计算文件的Byte数、字数、或是行数。参数如下:

  • -c 或 --byte s或 --chars 只显示 Bytes 数。
  • -l 或-- lines 显示行数。
  • -w 或 --words 显示字数。

这里我们统计行数,也就是行数,因此配合管道符,使用wc -l


但是统计的行数,既包括了文件,又包括了文件夹。我们知道ls -l的结果中,如果是文件夹则以d开头;如果是文件,则以-开头,因此可以利用这个规则来筛选文件或者文件夹。ls -l | grep "^d"可以利用正则表达式^d来筛选以d开头的行。


然后在这个基础上再统计文件夹数量ls -l | grep "^d" | wc -l


同理,如果只想统计文件数量,那么正则表达式应该使用^-,完整命令为ls -l | grep "^-" | wc -l


如果想要统计当前目录包括子目录下的所有文件,则使用ls -lR | grep "^-" | wc -l


参考

Linux统计文件夹下的文件数目

评论