我正在尝试制作一个bash脚本,该脚本可以在不使用find命令的情况下在包含子目录的目录中查找和删除空文件。
这是使用find命令的脚本的一部分,但是我不确定如何在不使用find的情况下转换此行。
find . -type f -empty -delete
启用globstar
和./**
将扩展到.
及其子目录中的所有目录条目。
shopt -s globstar
for f in ./**; do
if [[ -f $f && ! -s $f ]]; then
echo rm "$f"
fi
done
[-f $f
类似于-type f
,而! -s $f
类似于-empty
;我们无需在此处引用$f
,因为在[[
和]]
中不会进行词拆分。
如果输出看起来不错,请删除回声。