Linux中查看指定文件夹内各个子文件夹内的文件数量

Linux下统计当前文件夹下的文件个数、目录个数的方法:

查看当前目录下的文件数量(不包含子目录中的文件)

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

查看当前目录下的文件数量(包含子目录中的文件) 注意:R,代表子目录

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

查看当前目录下的文件夹目录个数(不包含子目录中的目录),同上述理,如果需要查看子目录的,加上R

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

查询当前路径下的指定前缀名的目录下的所有文件数量

例如:统计所有以“20161124”开头的目录下的全部文件数量

ls -lR 20161124*/ |grep "^-"| wc -l

对每个命令参数做一下说明备注:

ls -l

该命令表示以长列表输出指定目录下的信息(未指定则表示当前目录),R代表子目录中的“文件”,这个“文件”指的是目录、链接、设备文件等的总称

grep “^d” 表示目录,”^-“表示文件

wc -l

表示统计输出信息的行数,因为经过前面的过滤已经只剩下普通文件,一个目录或文件对应一行,所以统计的信息的行数也就是目录或文件的个数

Linux中查看指定文件夹内各个子文件夹内的文件数量,则加入count脚本来组合使用

count脚本

#!/bin/sh
numOfArgs=$#
if [ $numOfArgs -ne 1 ]; then
echo -e "Usage: \nbash $0 dirForCount"
exit -1
fi
# args
ROOTDIR=$1
# core part
find $ROOTDIR -maxdepth 1 -type d | sort | while read dir; do
count=$(find "$dir" -type f | wc -l)
echo "$dir: $count"
done

执行

$ bash count.sh benchmark
benchmark: 2317
benchmark/0: 20
benchmark/1: 891
benchmark/2: 65
benchmark/3: 13
benchmark/4: 1328
赞(1)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » Linux中查看指定文件夹内各个子文件夹内的文件数量

登录

找回密码

注册