linux之ls -l|grep ^-|wc -l命令

查看某文件夹下文件的个数

ls -l |grep ^-|wc -l

find ./company -type f | wc -l

查看某文件夹下文件的个数,包括子文件夹里的

ls -lR|grep ^-|wc -l

查看某文件夹下文件夹的个数,包括子文件夹里的

ls -lR|grep ^d|wc -l

说明

主要使用了管道的方式,将ls -l的结果传入grep ^-,最后将结果传入wc -l列出行数(即计算前面统计的文件(目录)个数)。

ls -l
长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)

grep ^-
由于ls -l时:linux之ls -l|grep ^-|wc -l命令_第1张图片
文件类型在每行的第一个字符,-表示普通文件;d表示目录;l表示链接文件。
^-表示-开头的内容。
这里将长列表输出信息过滤一部分,只保留普通文件,如果只保留目录就是 ^d(目录的符号为d)链接文件的符号为l……

wc -l
统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件,所以也就是文件的个数。

参考自https://www.cnblogs.com/senior-engineer/p/6203268.html,图片来源网络。

你可能感兴趣的:(Linux,shell,linux)