我尝试在 Ubuntu 上安装 iOS 设备来复制/备份图像。DCIM 文件夹中有很多文件。出于某种原因,其中许多文件在尝试打开时出现“无法打开文件(输入/输出错误)”错误。它们与好文件混在一起。
我想删除所有带有这些错误的图像文件,但又不想一个一个地检查它们以找出哪些文件是好的、哪些文件无法打开。
有没有办法从命令行检测这些坏文件?
~/usr/mnt/DCIM/101APPLE$ ll -1rth
total 614M
-rw-r--r-- 2 gdhp gdhp 2.1M May 4 13:01 IMG_1568.JPG
-rw-r--r-- 2 gdhp gdhp 1.7M May 4 13:01 IMG_1562.JPG
-rw-r--r-- 2 gdhp gdhp 3.8M May 4 13:01 IMG_1063.JPG
-rw-r--r-- 2 gdhp gdhp 1.4M May 4 13:04 IMG_1816.JPG
-rw-r--r-- 2 gdhp gdhp 190K May 4 13:04 IMG_1517.JPG # bad I/O
-rw-r--r-- 2 gdhp gdhp 1.3M May 4 13:06 IMG_1811.JPG
-rw-r--r-- 2 gdhp gdhp 668K May 4 13:06 IMG_1263.JPG
-rw-r--r-- 2 gdhp gdhp 1.3M May 4 13:06 IMG_1048.JPG
-rw-r--r-- 2 gdhp gdhp 3.0M May 16 11:20 IMG_1172.JPG # bad I/O
-rw-r--r-- 2 gdhp gdhp 2.6M May 16 11:21 IMG_1175.JPG
-rw-r--r-- 2 gdhp gdhp 1.5M May 17 18:29 IMG_1727.PNG
...
答案1
其实不需要 flint。只需执行 md5sum 并获取 I/O 错误列表,然后处理删除这些文件。
~/usr/mnt5/DCIM/104APPLE$ md5sum *
md5sum: IMG_4001.JPG: Input/output error
md5sum: IMG_4002.JPG: Input/output error
md5sum: IMG_4003.JPG: Input/output error
md5sum: IMG_4004.JPG: Input/output error
md5sum: IMG_4005.JPG: Input/output error
md5sum: IMG_4006.JPG: Input/output error
md5sum: IMG_4007.JPG: Input/output error
md5sum: IMG_4008.JPG: Input/output error
md5sum: IMG_4009.JPG: Input/output error