如何使这个脚本工作,但在任何目录而不是当前目录中搜索空文件?

时间:2017-04-05 01:03:03

标签: file

#!/bin/bash
n=0
for f in *; do
  [[ -f "$f" ]] && { echo "$f"; ((n++)); }
done
echo :Number of empty files: $n"

目前它检查当前目录中的空文件,我希望它在任何目录中搜索空文件。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

递归搜索当前目录及以下的空文件:

find . -empty -type f

答案 1 :(得分:0)

递归列出指定目录及以下的空文件并报告总数

<强> findempty

#!/bin/bash
echo :Number of empty files: `find $1 -empty -type f | tee /dev/tty | wc -l`

使用示例

findempty /tmp

示例输出

/tmp/source/fb/b
/tmp/source/fb/a
/tmp/source/fb/c
/tmp/source/fa/b
/tmp/source/fa/a
/tmp/source/fa/c
/tmp/source/fc/b
/tmp/source/fc/a
/tmp/source/fc/c
/tmp/dest/source/fb/b
/tmp/dest/source/fa/b
/tmp/dest/source/fc/b
:Number of empty files: 12