Вопрос Как определить тип файла без расширения в Windows?


Иногда я получаю файлы от моих клиентов, у которых неправильное расширение файла. Например, имя image.jpg но файл на самом деле является изображением TIFF. Во многих случаях я могу это прояснить, открыв файл в текстовом редакторе, посмотрев первые несколько байтов, затем выведя, какой тип файла он есть.

Это работает для меня с файлами JPEG, TIFF, GIF и PDF. Однако существует много других типов файлов.

Можно ли автоматизировать идентификацию правильного типа файла путем анализа содержащихся данных?


145
2018-04-24 07:36


происхождения


Для заинтересованных file команда делает это на машинах * nix. - boehj
Очень хороший вопрос! То, что я тайно хотел все это время, но всегда забывал спросить :) - pepoluan
Я не понимаю, почему этот вопрос не по теме (через 3 года). Я не прошу конкретного программного обеспечения (я изложил свой вопрос, чтобы подчеркнуть это). Я просто хочу найти решение. - Martin
Я не понимаю, почему 26 человек считают, что комментарий, связанный с boehj * nix выше, добавляет что-то полезное для этой должности. Этот вопрос отмечен windows, но комментарий подразумевает: «Вы не можете сделать это в Windows, вы должны использовать * nix вместо». Так? Комментарий направлен «для заинтересованных». В чем? Измените компьютер? :( - Aacini
@Aacini полезен для * nix людей, которые приезжают сюда из Google. - jingyu9575


ответы:


Вы можете использовать TrID который имеет растущую библиотеку определений типов файлов для идентификации файлов.

Screenshot

Подстановочные знаки поддерживаются, поэтому в вашем примере вы можете просто поместить все изображения в папку, например. C: \ verifyimages - тогда вы можете использовать команду:

trid C:\verifyimages\*

Это рассмотрит все файлы в verifyimages папка.


Существует также версия GUI, TrIDNet:

Screenshot

Существует документация о том, как вы можете легко интегрировать TrID или TrIDNet в Windows Explorer и Total Commander:

проводник Виндоус

Total Commander


137
2018-04-24 07:47



Обратите внимание, что это означает, что оно не лицензировано для коммерческого использования, только личное использование - Chris Magnuson
У меня были некоторые проблемы с выяснением, какие файлы загрузки необходимы для использования этой программы. Поэтому этот комментарий должен помочь в этом. Вам нужно загрузить два файла. Во-первых, утилита командной строки или утилита GUI. Во-вторых, папка определений XML, называемая «TrID XML defs». Поместите XML-файлы определения в тот же каталог, что и TrID. Затем определите определения. Наконец, вы можете начать использовать его. - mrtsherman


файл

файл проверяет каждый аргумент в попытке его классифицировать. В этом порядке выполняются три набора тестов: тесты файловой системы, тесты магических чисел и языковые тесты. первый тест, который преуспевает, вызывает печать типа файла.

Печатный тип обычно содержит одно из слов текст (файл содержит только печатные символы и несколько общих управляющих символов и, вероятно, безопасен для чтения на терминале ASCII), исполнимый (файл содержит результат компиляции программы в форме, понятной для какого-либо ядра UNIX или другого), или данные что-то другое (данные обычно «двоичные» или не подлежащие печати). Исключениями являются известные форматы файлов (основные файлы, архивы tar), которые, как известно, содержат двоичные данные.


48
2018-04-24 07:38



file является стандартным, но на старых системах (особенно не Linux) не очень хорошо осведомлен. Для Ubuntu и т. Д. Он должен быть довольно респектабельным и даже установлен как стандарт. - Thorbjørn Ravn Andersen
@Anm_LA, он вообще не является стандартным для Windows, но ссылка в ответе на порт версии GNU file к Windows. Если другие команды * nix вам интересны в качестве пользователя Windows, этот сайт найти все виды драгоценных камней. - RBerteig
Я очень сомневаюсь, что file является экспертом в файлах, сделанных приложениями Windows. - Robin Green
@Robin: Вы можете протестировать его. - Ignacio Vazquez-Abrams
@Robin: Я очень сомневаюсь, что вы использовали file на всех, и все же вы почти решились на его эффективность. - tzot


Я работал в Французской национальной библиотеке, чтобы создать систему цифрового архива, которая содержит не только оцифрованные книги, но и миллионы цифровых артефактов со всеми типами странных типов файлов. Мы использовали JHOVE для распознавания форматов файлов.

JHOVE является открытым исходным кодом, он поддерживается JSTOR и Библиотекой Гарвардского университета. Довольно просто использование,


12
2018-04-24 13:16



круто! но он распознает проприетарные форматы, такие как TrID? в любом случае, я делать имеют некоторые виды использования для идентификации подформатов / вариантов непатентованных форматов (или, если быть точнее, проприетарных «расширений» для стандартизованных форматов), поэтому это будет полезно. спасибо за хедз-ап! - pepoluan


я использую Библиотеки Oracle OutsideIn в моих программах. Не бесплатно, но они хорошо работают, особенно для изображений. Говоря о рынке, он поддерживает более 500 типов файлов.


1
2018-04-24 11:30





Вы можете проверить тип файла с любого компьютера, включая окна в

http://www.checkfiletype.com


0
2018-06-04 11:24



Добро пожаловать в Суперпользователя! Пожалуйста прочти как рекомендовать программное обеспечение в ответах, особенно биты в жирный; затем отредактируйте свой ответ, чтобы следовать рекомендациям. Это относится даже к рекомендациям веб-сайта! ура - bertieb