Mam zatem folder z tysiącami plików graficznych, wszystkie zapisane jako .jpg
.Zmień nazwę zestawu obrazów PNG z rozszerzeniem ".jpg" na ".png"
Problem polega na tym, że niektóre z tych plików są w rzeczywistości plikami obrazów PNG, więc nie otwierają się w wielu programach, chyba że ręcznie zmienię ich rozszerzenie na .png
. Na przykład, obraz widz Ubuntu rzuca ten błąd:
"Error interpreting JPEG image file (Not a JPEG file: starts with 0x89 0x50)"
Już prowadził hexdump niektórych z tych plików, aby potwierdzić ten błąd i sprawdza się.
Szukam prostego sposobu na znalezienie wszystkich plików o złym rozszerzeniu wśród innych plików i zmianę ich rozszerzenia. Jak na przykład zrobiłbym to przy pomocy skryptu Bash? Do tej pory nie mam pojęcia. Cała pomoc została doceniona!
Zakłada to "otwarte" próby * przetwarzania * danych pliku * i *, które zależą od rozszerzenia pliku, aby było poprawne. Proste "ogólne" 'otwarte' zawsze zakończy się powodzeniem na istniejącym pliku. "Inteligentne" 'otwarte' zignoruje rozszerzenie pliku i użyje [magicznego podpisu] pliku (http://en.wikipedia.org/wiki/List_of_file_signatures), aby określić jego typ i dlatego może się powieść. – usr2564301