Znalezienie typu pliku zakładającego nieprawidłowe rozszerzenie

9

Mam archiwum zdjęć, które utrzymuję. Czasami strony, z których je ściągam, ponownie formatują plik, zachowując to samo rozszerzenie, najczęściej przekształcając obrazy PNG w pliki JPG, które nadal mają nazwy „.png”. Czy istnieje sposób, aby dowiedzieć się, kiedy to się stało, i naprawić to automatycznie?

W systemie Windows użyłem do tego IrfanView, ale to wymaga opakowania na wino.

Aescula
źródło
Możesz użyć bezpłatnego narzędzia online Falstaff
Shaul Zevin

Odpowiedzi:

17

Możesz użyć filepolecenia:

$ file file.png
file.png: PNG image data, 734 x 73, 8-bit/color RGB, non-interlaced

$ mv file.png file.txt
$ file file.txt
file.txt: PNG image data, 734 x 73, 8-bit/color RGB, non-interlaced

fileRobi kilka testów na pliku, aby określić jego typ. Prawdopodobnie najważniejszym testem jest porównanie magicznej liczby (łańcucha w nagłówku pliku) ze wstępnie zdefiniowaną listą.

jimmij
źródło
Dokładnie tego szukałem. Dziękuję Ci!
Aescula,
1
Podczas korzystania filenależy pamiętać, że może on dawać różne wyniki w różnych systemach uniksowych. unix.stackexchange.com/questions/151008/…
slm