我怎样才能找到一个目录,即使在子目录下的所有零字节文件?
我已经做到了这一点:
#!/bin/bash
lns=`vdir -R *.* $dir| awk '{print $8"\t"$5}'`
temp=""
for file in $lns
do
if test $file = "0"
then
printf $temp"\t"$file"\n"
fi
temp=$file
done
但我只得到的结果在该目录下的文件不是所有的文件,如果任何文件名有一个空间,然后我只得到第一个单词,然后标签
谁能帮我?
要打印及以下尺寸0 $目录中的所有文件的名称:
find "$dir" -size 0
请注意,并非所有的实现find
默认会产生输出,所以你可能需要做的:
find "$dir" -size 0 -print
作为除上述问题的答案:
如果你想删除这些文件
find $dir -size 0 -type f -delete
不,你不必费心的grep。
find $dir -size 0 ! -name "*.xml"
击4+测试 - 这是搜索大小为0的正确方法:
find /path/to/dir -size 0 -type f -name "*.xml"
搜索大小为0的多个文件扩展名:
find /path/to/dir -size 0 -type f \( -iname \*.css -o -iname \*.js \)
注意:如果您删除\(... \)的结果将是所有符合这一要求,因此忽略了大小为0的文件。