Jak mogę określić typ pliku bez rozszerzenia w systemie Windows?

150

Czasami otrzymuję pliki od moich klientów, które mają nieprawidłowe rozszerzenie. Na przykład nazwa to, image.jpgale plik jest w rzeczywistości obrazem TIFF. W wielu przypadkach mogę to wyjaśnić, otwierając plik w edytorze tekstu, patrząc na kilka pierwszych bajtów, a następnie dedukując, który to typ pliku.

Działa to dla mnie z plikami JPEG, TIFF, GIF i PDF. Istnieje jednak wiele innych typów plików.

Czy można zautomatyzować identyfikację prawidłowego typu pliku poprzez analizę zawartych danych?

Jaskółka oknówka
źródło
36
Dla zainteresowanych filepolecenie to robi na maszynach * nix.
boehj 24.04.11
10
Nie rozumiem, dlaczego to pytanie jest nie na temat (po 3 latach). Nie proszę o konkretne oprogramowanie (przeredagowałem swoje pytanie, aby to podkreślić). Po prostu szukam rozwiązania.
Martin
2
Nie rozumiem, dlaczego 26 osób uważa, że ​​powyższy komentarz dotyczący boehj * nix „dodaje coś użytecznego do postu”. To pytanie jest oznaczone windows, ale komentarz sugeruje: „Nie możesz tego zrobić w systemie Windows, zamiast tego musisz użyć * nix”. Więc? Komentarz jest skierowany „dla zainteresowanych”. W czym? Zmienić komputer? :(
Aacini,
2
@Aacini przydatne dla * nix osób, które przychodzą tutaj z Google.
jingyu9575

Odpowiedzi:

145

Możesz użyć narzędzia TrID , które ma rosnącą bibliotekę definicji typów plików do identyfikacji plików.

Zrzut ekranu

Symbole wieloznaczne są obsługiwane, więc w twoim przykładzie możesz po prostu umieścić wszystkie obrazy do zbadania w folderze, np. C: \ Verimages - wtedy możesz użyć polecenia:

trid C:\verifyimages\*

Spowoduje to sprawdzenie wszystkich plików w verifyimagesfolderze.


Dostępna jest również wersja GUI, TrIDNet :

Zrzut ekranu

Dostępna jest dokumentacja, w jaki sposób możesz łatwo zintegrować TrID lub TrIDNet z Windows Explorerem i Total Commander:

Eksplorator Windows

Total Commander

Gafel
źródło
4
Należy pamiętać, że oznacza to, że nie jest licencjonowany do użytku komercyjnego, a jedynie do użytku osobistego
Chris Magnuson
2
Miałem problem z ustaleniem, które pliki do pobrania są niezbędne do korzystania z tego programu. Ten komentarz ma w tym pomóc. Musisz pobrać dwa pliki. Po pierwsze, narzędzie wiersza polecenia lub narzędzie GUI. Po drugie, folder definicji XML o nazwie „TrID XML defs”. Umieść pliki XML definicji w tym samym katalogu, co TrID. Następnie zeskanuj definicje. Wreszcie możesz zacząć z niego korzystać.
mrtsherman
Dzięki, mrtsherman, za wyjaśnienie. Byłem również zdezorientowany. Dokumenty można ulepszyć, ale fajne narzędzie!
J Woodchuck,
52

plik

Plik testuje każdy argument, próbując go sklasyfikować. Istnieją trzy zestawy testów przeprowadzonych w tej kolejności: testy systemu plików, testy magicznej liczby i testy językowe. Pierwszy test, który powoduje, że uda typ pliku do wydrukowania.

Drukowany typ zwykle zawiera jeden ze słów tekst (plik zawiera tylko znaki drukujące i kilka typowych znaków kontrolnych i prawdopodobnie można go bezpiecznie odczytać na terminalu ASCII), wykonywalny (plik zawiera wynik kompilacji programu w formie zrozumiałe dla jakiegoś jądra UNIX lub innego) lub danych oznaczających cokolwiek innego (dane są zwykle „binarne” lub nie można ich wydrukować). Wyjątkiem są dobrze znane formaty plików (pliki podstawowe, archiwa tar), o których wiadomo, że zawierają dane binarne.

Ignacio Vazquez-Abrams
źródło
1
filejest standardem, ale na starszych systemach (szczególnie nie Linux) nie ma dużej wiedzy. W przypadku Ubuntu itp. Powinien być dość szanowany, a nawet zainstalowany jako standard.
Thorbjørn Ravn Andersen
1
@Anm_LA, w ogóle nie jest to standard w systemie Windows, ale link w odpowiedzi jest do portu wersji GNU filesystemu Windows. Jeśli inne polecenia * nix są dla ciebie interesujące jako użytkownik systemu Windows, poszukaj tej witryny, aby znaleźć wszelkiego rodzaju klejnoty.
RBerteig 24.04.11
2
Bardzo wątpię, że filejest ekspertem od plików tworzonych przez aplikacje Windows.
Robin Green,
5
@Robin: Możesz to przetestować.
Ignacio Vazquez-Abrams
11
@Robin: Bardzo wątpię, czy filew ogóle użyłeś , a jednak prawie zdecydowałeś się na jego skuteczność.
tzot
13

Pracowałem dla Francuskiej Biblioteki Narodowej, aby zbudować system archiwum cyfrowego, który zawiera nie tylko zdigitalizowane książki, ale także miliony cyfrowych artefaktów z różnego rodzaju dziwnymi typami plików. Użyliśmy JHOVE do rozpoznania formatów plików.

JHOVE jest oprogramowaniem typu open source, jest utrzymywany przez JSTOR i bibliotekę uniwersytecką Harvarda. Jest raczej prosty w użyciu .

Nicolas Raoul
źródło
chłodny! ale czy rozpoznaje zastrzeżone formaty, takie jak TrID? W każdym razie, ja nie pewne do identyfikacji subformats / warianty niezastrzeżonych formatach (lub, dokładniej, własności „” do rozszerzenia standardowych formatach), więc to by się przydał. dziękuję za heads-up!
pepoluan
1

Korzystam z bibliotek OutsideIn Oracle w swoich programach. Nie za darmo, ale działają dobrze, szczególnie w przypadku zdjęć. Mówi rynek mówi, że obsługuje ponad 500 typów plików.

Richard Brightwell
źródło
0

Możesz sprawdzić typ pliku na dowolnym komputerze, w tym na Windowsie

http://www.checkfiletype.com

John Williams
źródło
1
Witamy w Super User! Proszę przeczytać, jak polecać oprogramowanie w odpowiedziach , szczególnie fragmenty pogrubione ; następnie edytuj swoją odpowiedź, aby postępować zgodnie ze wskazówkami. Dotyczy to nawet polecania strony internetowej! Pozdrawiam
bertieb