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
。
参考