我需要一种快速方法来列出硬盘上损坏的文件。
到目前为止,我在数据文件系统的根目录上执行此操作之前,在 6.7GiB 文件夹中尝试了这些命令:
$ time $(which grep) -a -r . ./ 2>&1 >/dev/null | grep -w error
grep: ./bug_de_l_an_2000.mp4: Input/output error
real 1m40.097s
user 0m18.804s
sys 0m8.052s
$ time $(which find) . -type f -exec cat {} 2>&1 >/dev/null \; | grep -w error
cat: ./bug_de_l_an_2000.mp4: Input/output error
real 1m39.405s
user 0m0.268s
sys 0m7.396s
$ time $(which find) . -type f -exec dd if={} of=/dev/null 2>&1 \; | grep -w error
dd: error reading ‘./bug_de_l_an_2000.mp4’: Input/output error
real 1m12.183s
user 0m6.856s
sys 0m20.092s
$ time $(which find) . -type f -exec pv {} 2>&1 >/dev/null \; | grep -w error
pv: ‘./bug_de_l_an_2000.mp4’: Input/output error
real 1m39.572s
user 0m0.392s
sys 0m11.708s
您知道更快的方法吗?