【发布时间】:2012-02-21 02:27:41
【问题描述】:
恢复损坏的硬盘后,我有很多“坏”文件。
我需要 bash 中的脚本,它可以帮助我删除坏文件,例如
- 零字节仅包含 (00 00 00 00 00 ...)
【问题讨论】:
-
您可以使用
cmp filename /dev/zero。如果文件包含所有空字节,“EOF”将包含在输出到 stderr,如果有任何非空字节,“差异”将包含在输出到 stderr(基于 GNUcmp)。
恢复损坏的硬盘后,我有很多“坏”文件。
我需要 bash 中的脚本,它可以帮助我删除坏文件,例如
【问题讨论】:
cmp filename /dev/zero。如果文件包含所有空字节,“EOF”将包含在输出到 stderr,如果有任何非空字节,“差异”将包含在输出到 stderr(基于 GNU cmp)。
最好使用find:
find -maxdepth 1 -type f -empty -print0 | xargs -0 rm -f -v
【讨论】:
-exec 和 -delete。
find . -type f -size 0c -maxdepth 1 -exec rm {} \;
这个怎么样?
【讨论】:
rm \{\}吗?或者这可能是zsh 的事情......