Wenn Sie über JPEG-Dateien sprechen, ist das Dienstprogramm jpeginfo genau das, wonach Sie suchen. Es kann Dateien auf verschiedene Arten von JPEG-Fehlern und Korruption prüfen und entweder einen Fehlercode zurückgeben (das nützlichste für Skripterstellung) oder einfach Dateien mit Fehlern löschen.
Ich verwende dies als Teil meiner anfänglichen Dateiübertragung, um sicherzustellen, dass alles in Ordnung kopiert wird, ohne auf manuelle Überprüfung angewiesen zu sein. (Danach stelle ich sicher, dass sich ihre Prüfsummen im Rahmen meines normalen Backup- / Bitrot-Schutzes nicht ändern.)
Das Programm ist eine Befehlszeile und wird als Quellcode geliefert. Es sollte jedoch auf jeder Linux-Distribution oder auf einem Mac mit einer ordnungsgemäß eingerichteten Entwicklungsumgebung einfach zu erstellen und zu verwenden sein. Ich bin sicher, Sie könnten es sogar unter Windows mit Cygwin oder MinGW machen. (Obwohl ich nicht für seine Integrität bürgen kann, scheint dieser Blog-Beitrag legitim zu sein und enthält einen vorkompilierten Download.) So erstellen Sie ihn selbst:
$ git clone https://github.com/tjko/jpeginfo.git
Cloning into 'jpeginfo'...
[...]
Checking connectivity... done
$ cd jpeginfo/
$ ./configure && make
Dies sollte einen jpeginfo
Befehl erstellen, den Sie entweder ausführen oder kopieren können, wo immer Sie möchten (möglicherweise mit make install
).
Dann führen Sie es so aus:
$ ./jpeginfo -c *.jpg
test1.jpg 1996 x 2554 24bit Exif P 6582168 [OK]
test2.jpg 1996 x 2554 24bit Exif P 6582116 Premature end of JPEG file [WARNING]
test3.jpg Corrupt JPEG data: 1 extraneous bytes before marker 0xe2 1996 x 2554 24bit Exif P 6582169 [WARNING]
Hier ist test1.jpg völlig in Ordnung, und test2.jpg habe ich ein paar Bytes am Ende gelöscht, und test3.jpg habe ich einige zufällige Bytes im Header geändert.
Wenn Sie über RAW-Dateien verfügen, besuchen Sie diese Seite der American Society of Media Photographers zur DNG-Validierung oder eine Seite mit Informationen zur Datenvalidierung , die die Verwendung des DNG-Konverters von Adobe zur Stapelvalidierung proprietärer RAW-Formate behandelt. (Leider ist dies eine GUI-Operation und nicht unbedingt leicht zu skripten.)
Wenn Sie eine Kamera haben, die von Haus aus die Version 1.2 von DNG ausgibt, ist dies sogar noch besser, da diese eine integrierte MD5-Prüfsumme der Bilddaten enthält. Leider scheint dies nicht mit den normalen Bild-Metadaten gespeichert zu sein - oder zumindest wird es von exiftool und exiv2 nicht erkannt und es werden generell 1.2-DNG-Dateien gelesen - was nach meinem Kenntnisstand derzeit die Adobe-Validierung bedeutet Dies kann nur mit dem Tool genutzt werden.