我需要提取某些目录树中有多少文件的信息:
/.../testRoot/test1/test11/..../file1
/.../testRoot/test1/test11/file2
/.../testRoot/test1/test11/..../file3
/.../testRoot/test1/test11/file4
.....................................
/.../testRoot/test1/test1n/fileq
/.../testRoot/test1/test1n/..../filew
/.../testRoot/test1/test1n/filee
/.../testRoot/test1/test1n/.../.../ .../filer
如何计算testRoot中有多少个文件?
答案1
find /path/to/testRoot -type f | wc -l
答案2
中bash4
及以上:
shopt -s nullglob globstar
i=0
for f in /path/to/testRoot/*/**; do
[[ -f $f ]] && (( i++ ))
done
echo "$i"