Nalezení poškozených JPEG souborů
Možná se vám taky někdy při prohlížení fotek stala podobně nemilá věc – poškozený soubor. Problém může být způsoben chybou souborového systému, hardwaru nebo třeba přenosem po síti. Pokud chybu odhalíte včas, máte větší šanci vytáhnout nepoškozený soubor ze zálohy, karty foťáku, e-mailu atd.
Napsal jsem si jednoduchý skript, který rekurzivně projde všechny JPEG soubory v aktuálním adresáři a vypíše ty, které obsahují chybná data.
#!/bin/bash
# Hledá chybné JPEG soubory v aktuálním adresáři a podadresářích
# a vypisuje jejich názvy
function najdi_chyby() {
identify -verbose "$0" &> /dev/null || echo "$0";
}
export -f najdi_chyby
find -regextype posix-extended -iregex ".*\.(jpg|jpeg)" -exec bash -c 'najdi_chyby "$@"' {} \;
Vynecháním volby -verbose
urychlíte zpracování, ale program pak nemusí odhalit všechny chyby.
Kromě standardních GNU nástrojů používá příkaz identify
z balíku ImageMagick.
Příloha | Velikost |
---|---|
jpeg-chyby | 315 bytes |