简介

统计当前文件夹下文件数量,包含子文件夹。

ls -lR| grep "^-" | wc -l

详解

ls

list directory contents
目录内容列表

-l

L的小写字母
List in long format.
长列表格式。
A total sum for all the file sizes is output on a line before the long listing.
注意:所有文件大小的总数会展示在长列表上方。

[root@localhost ~]# ls -l
总用量 1071199
-rw-r--r--. 1 root root  3589 11 2010 sample.tar.gz
drwxr-xr-x. 2 root root     2 11 2010 Public

-R

Recursively list subdirectories encountered.
递归对子目录内容进行列表。

grep

打印匹配给定模式的行

"^-"

以-开头的行,如上面的-rw-r--r--.
表示匹配所有普通文件,忽略目录,因为目录以d开头。

wc -l

wc表示输出文件中的行数、单词数、字节数。
l参数是lines的缩写,l, --lines,表示输出换行符统计数。

小结

ls -lR| grep "^-" | wc -l

递归获取当前目录下的所有文件(含目录和链接)的长列表信息,从中查找以-开头的行,再统计并输出这些行的数量。

Logo

更多推荐