Можно ли узнать тип файла по расширению

Обновлено: 21.11.2024

При планировании переноса, если не используется MigDocs.xml, следует указать типы файлов, файлы, папки и параметры, которые необходимо перенести. Во-первых, вы должны определить стандартные расположения файлов на каждом компьютере, например, Мои документы. , C:\Data и местоположения, указанные компанией, например \EngineeringDrafts. Далее следует определить и локализовать нестандартные места. Для нестандартных местоположений учтите следующее:

Типы файлов. Подумайте, какие типы файлов необходимо включить и исключить из миграции. Вы можете создать этот список на основе распространенных приложений, используемых в вашей организации. Приложения обычно используют определенные расширения имен файлов. Например, Microsoft Office Word в основном использует расширения имен файлов .doc, .docx и .dotx. Однако он реже использует и другие типы файлов, например шаблоны (файлы .dot).

Исключенные местоположения. Рассмотрите места на компьютере, которые следует исключить из переноса (например, %WINDIR% и Program Files).

Новые локации. Решите, куда файлы должны быть перенесены на конечном компьютере, например, \My Documents, в назначенную папку или в папку, совпадающую с именем и расположением файлов на исходном компьютере. Например, у вас могут быть общие данные на исходной машине или вы можете пожелать очистить документы за пределами профилей пользователей в исходной системе. Определите любые данные, которые необходимо перенаправить в новое место на этапе применения. Этого можно добиться с помощью правил изменения местоположения.

После того как вы проверили, с какими файлами и типами файлов регулярно работают конечные пользователи, вам нужно будет найти их. Файлы могут быть сохранены в одну папку или разбросаны по диску. Хорошей отправной точкой для поиска типов файлов для включения является просмотр зарегистрированных типов файлов на компьютере.

Чтобы найти зарегистрированные типы файлов на компьютере под управлением Windows 7 или Windows 8

Нажмите «Пуск». Откройте Панель управления, щелкните Домашняя страница панели управления и щелкните Программы.

Нажмите "Программы по умолчанию" и выберите "Связать тип файла или протокол с программой".

На этом экране отображаются зарегистрированные типы файлов.

Дополнительные сведения о том, как изменить типы файлов, файлы и папки, переносимые при указании файла MigUser.xml, см. в разделах Инструкции по средству миграции пользовательской среды (USMT).

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

Если вы хотите изменить расширение файла, см. статью Как изменить расширение файла.
Чтобы изменить программу по умолчанию, связанную с расширением файла, см. раздел Как связать файл с программой в Windows.

Просмотр расширения отдельного файла

    файл.
  1. Выберите параметр «Свойства».
  2. В окне Свойства, похожем на то, что показано ниже, см. запись Тип файла, которая представляет собой тип и расширение файла. В приведенном ниже примере файл представляет собой файл TXT с расширением .txt. В этом случае файл открывается с помощью программы TextPad.

Всегда показывать расширения всех файлов

Пользователи, хорошо знакомые с компьютерными файлами и расширениями файлов, могут захотеть постоянно просматривать расширения файлов, чтобы облегчить поиск и просмотр файлов. Для этого выполните следующие действия для вашей версии Windows.

Windows 10

    .
  1. В панели управления введите файл в текстовое поле Панель управления поиском. Нажмите «Параметры проводника» в результатах поиска.
  2. В окне Параметры проводника щелкните вкладку "Вид".
  3. Снимите флажок с параметра Скрывать расширения для известных типов файлов.

Windows 2000, XP, Vista, 7 и 8

    .
  1. Нажмите "Параметры папки".
  2. Нажмите "Просмотр".
  3. Снимите флажок с параметра Скрывать расширения для известных типов файлов.
  1. Откройте Мой компьютер.
  2. Нажмите "Инструменты" и выберите "Параметры папки" или нажмите "Вид", а затем "Параметры" в зависимости от вашей версии Windows.
  3. В окне Параметры папки перейдите на вкладку "Вид".
  4. Снимите флажок с параметра Скрыть расширения файлов для известных типов файлов.

Командная строка MS-DOS и Windows

В MS-DOS при вводе dir для отображения списка всех файлов также отображается расширение каждого файла.

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

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

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

Не понимаю, почему этот вопрос не по теме (спустя 3 года). Я не прошу конкретное программное обеспечение (я переформулировал свой вопрос, чтобы подчеркнуть это). Я просто прошу решения.

Я не понимаю, почему 26 человек считают, что комментарий выше, связанный с boehj *nix, "добавляет что-то полезное в пост". Этот вопрос помечен как windows , но комментарий подразумевает: «Вы не можете сделать это в Windows, вместо этого вы должны использовать * nix». Так? Комментарий адресован "для интересующихся". В чем? Сменить компьютер? :(

@Aacini Кроме того, Windows 10 теперь поддерживает bash, поэтому файл теперь является правильным ответом на этот вопрос (хотя я его не проверял).

6 ответов 6

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

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

При этом будут проверены все файлы в папке verifyimages.

Также доступна версия с графическим интерфейсом, TrIDNet:

Доступна документация о том, как легко интегрировать TrID или TrIDNet в проводник Windows и Total Commander:

Проводник Windows

Тотал Командующий

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

Спасибо, mrtsherman, за разъяснение. Я тоже был в замешательстве. Документы можно улучшить, но это хороший инструмент!

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

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

В наши дни существует так много различных типов файлов, что важно, чтобы каждый файл, который вы пытаетесь открыть или выполнить, правильно определялся Windows. Обычно это достигается путем просмотра расширения файла .exe или .jpg, например, и когда вы дважды щелкаете один из этих файлов, система знает, что это за файл и что с ним делать.

Возможно, раньше с вами случалось, что вы загружаете или получаете файл, а у него вообще нет расширения или что-то довольно неясное, что выглядит неправильно. В этом случае файл может быть исполняемым файлом, документом Office, MP3 или ZIP-архивом. Возможности почти безграничны в отношении расширения, которое вы могли бы дать файлу, когда вы не знаете, что это такое на самом деле.

Если вы ищете более универсальное решение для определения нераспознанных типов файлов, вот шесть вариантов, которые помогут вам найти неизвестные файлы или файлы с неправильным расширением.

<р>1. Веб-страница идентификатора файла Toolsley

Хотя многим людям может быть неудобно загружать свои файлы на веб-сайт, в этом случае им не о чем беспокоиться. Вы вообще не загружаете неизвестные файлы в Интернет, а работа по идентификации выполняется локально на вашем компьютере с использованием Javascript. Это означает, что нет проблем с небезопасными веб-сайтами, скоростью загрузки в Интернет или ограничениями на размер файла.

Пользоваться сервисом проще простого: просто перетащите файл в серое поле на веб-странице или нажмите "Обзор" и найдите файл вручную. Результат того, что он считает файлом, появится в поле ниже.Результаты не всегда очень информативны (файл MP3 отображается как «Аудиофайл с ID3 версии 2.4.0»), но это быстро, требует только веб-браузера и должно быть достаточно хорошим, чтобы идентифицировать или дать вам представление о том, какой тип файла, который у вас есть.

<р>2. ТРИД / ТРИДНЕТ

TrID, вероятно, является наиболее полной и известной утилитой для идентификации файлов. Он также все еще находится в активной разработке, поэтому отсутствующие типы файлов могут быть добавлены в будущем. По сути, он разделен на три разные части. Во-первых, у вас есть инструмент командной строки TrID, затем графический пользовательский интерфейс TrIDNet. Наконец, у вас есть база данных определений, содержащая информацию для более чем 13 000 типов файлов.

TrIDNet

Запустите TrIDNet и перетащите файл в окно или найдите его. Программа даст вам процент возможных типов файлов, которые могут быть. Самый высокий процент - это то, что он считает наиболее вероятным. Дважды щелкните рядом со стрелкой, чтобы открыть окно с дополнительной информацией о типе файла. Если вы поместите папку defs в другое место, вы можете вручную найти ее и отсканировать определения внизу.

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

Есть и другие доступные аргументы, но они не требуются, если вы просто хотите, чтобы файл был распознан. Также можно создать простую цель перетаскивания для TrID, чтобы вы могли просто перетащить файл на значок, чтобы он открыл окно консоли с идентификацией (TrIDNet также принимает перетаскиваемый файл на свой значок). Создайте новый текстовый файл в Блокноте и добавьте следующие строки или загрузите готовый пакетный файл снизу.

Сохраните файл как TrID.bat и поместите его в ту же папку, что и TrID. Аргумент -w указывает TrID держать окно открытым, пока вы не нажмете любую клавишу.

<р>3. Эксифтул

Программа ExifTool — это, прежде всего, инструмент командной строки, который также можно использовать с рабочего стола. Просто извлеките исполняемый файл из zip-файла и, чтобы идентифицировать файл, перетащите его на значок ExifTool. Любые расширения файла будут проигнорированы, а его содержимое будет просканировано, поэтому не имеет значения, имеет ли файл расширение или просто неправильное расширение.

Exiftool в основном предназначен для просмотра и редактирования метаинформации, содержащейся в большинстве цифровых изображений. Но он также способен распознавать сотни различных файлов по их содержимому. После перетаскивания файла на значок откроется окно консоли с подробной информацией о файле, а также может содержать дополнительную информацию, такую ​​как сведения о теге изображения, информацию об архиве или описания исполняемого файла.

Дважды щелкните ExifTool, чтобы просмотреть справку, поддерживаемые типы и дополнительные команды, которые можно использовать. Не удаляйте «(-k)» из имени файла ExifTool, так как это команда, позволяющая держать окно результатов открытым, пока вы не нажмете Enter. Более продвинутые пользователи могут добавить в скобки другие команды ExifTool для обработки перетаскиванием.

<р>4. DROID (идентификация объекта цифровой записи)

DROID — это инструмент с открытым исходным кодом, разработанный Национальным архивом Великобритании для пакетной идентификации различных типов форматов файлов. Это делает его достаточно удобным для одновременной идентификации нескольких неизвестных файлов, а не по одному. Внутренняя база данных распознаваемых форматов файлов обычно обновляется несколько раз в год. DROID основан на Java, поэтому является многоплатформенным. Версия для Windows включает встроенную Java в Zip-файл, поэтому вам не нужно ее устанавливать.

Запустите программу, запустив Droid.bat из распакованного архива. Перетащите в окно несколько неизвестных файлов или нажмите кнопку «Добавить» для просмотра. Затем нажмите кнопку «Пуск», и результаты будут почти мгновенными. В столбце «Формат» указано, что это за файл, а в столбце PUID указана ссылка на Национальный архив со страницей с более подробной информацией о типе файла.

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

<р>5. Загрузите файл и идентифицируйте его в Интернете

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

Проверить тип файла

Подождите, пока файл будет загружен, а затем нажмите кнопку «Проверить тип файла». Откроется новая вкладка с необходимой информацией о типе файла. Также может быть кнопка «Показать метаданные», которая отображает дополнительную информацию о медиафайлах. Максимальный размер файла для загрузки – 16 МБ, поэтому этот сервис не подходит для больших файлов.

Онлайн-идентификатор файла TRID

Это еще один вариант, который использует базу данных TrID для идентификации файлов и размещается на официальном веб-сайте TrID, как и соответствующие инструменты, перечисленные здесь.

<р>6. Найдите открывалку

Чтобы получить последние определения файлов, просто загрузите и распакуйте пакет TrIDDefs.TRD в папку Locate Opener TrID. Если программа нашла какие-либо совпадения через TrID, она выведет окно с наиболее вероятным процентным соотношением и предложит добавить расширение файла, которое лучше всего подходит. Программа также имеет командную строку, и несколько дополнительных параметров можно настроить с помощью файла настроек ini.

Несмотря на то, что программа Locate Opener была выпущена в 2009 году, база данных определений TrID, на которую она опирается, постоянно обновляется. Поэтому он по-прежнему может распознавать типы файлов, которые были выпущены после последней версии программы, например форматы Google WebP и WebM.

Если вы один из тех, кто хочет знать, как работают инструменты указанной службы, а также как их использовать на своем компьютере, то продолжайте чтение.

Если вам кажется, что проблема с определением типов файлов без расширений надуманная, то это далеко не так! Во-первых, если подумать, это непростая задача. А можно нарваться на файл без расширения, например, при декодировании строки из кодировки Base64.

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

1) разбор прошивки (например, роутеров, IP-камер) на составные части (первый этап реверс-инжиниринга или анализ работы устройств для поиска уязвимостей и бэкдоров)

2) поиск файловых систем на дисках и их образов (первый этап судебной ИТ-экспертизы)

3) поиск удаленных файлов

Как определить тип данных, если у файла нет расширения

Если файл не имеет расширения, то единственным способом определить его тип является содержимое этого файла. Вы можете попробовать добавить к имени файла разные расширения и попытаться открыть программы, соответствующие расширению — этот вариант медленный и неэффективный.

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

Такие шаблоны в английском языке часто называют магическими — это происходит от «магического числа» в исполняемых файлах. Эти файлы имеют «магический номер», хранящийся в определенном месте в начале файла, который сообщает операционной системе UNIX, что файл является двоичным исполняемым файлом и какой из нескольких типов. Концепция магического числа была применена к другим двоичным файлам. То есть файлы одного типа имеют одинаковую последовательность байтов в определенном месте от начала файлов.

Файл с сигнатурами, описывающими, какие именно байты, на каком расстоянии от начала файла характерны для файлов того или иного типа, обычно называют магическим файлом.

В дополнение к магическим числам можно использовать и другие методы, например, файловая программа также может использовать системный вызов stat для выполнения тестов файловых систем. Тип текстовых файлов определяется содержащимися в них строками (например, это может быть PHP-код, файл в формате XML или HTML-разметки, JSON и т. д.).

Команда file — мгновенно определяет тип любого файла

В Linux есть команда file с огромной базой сигнатур, которая очень быстро определяет тип файла:

Чтобы узнать, что представляет собой файл без расширения, выполните следующую команду:

То есть это текстовый файл офисного пакета Microsoft Office.

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

Программа file имеет параметры, подробности см. в отдельной статье «Инструкции по использованию команды file».

Аналог команды file для Windows

file — это утилита командной строки для Linux, поэтому пользователям Windows нужна какая-то альтернатива. Давайте рассмотрим несколько способов использования файла в Windows.

1. Файловая утилита в Cygwin

Этот способ, на мой взгляд, самый простой. Просто скачайте Cygwin, и вы сможете использовать большинство утилит Linux. Для получения дополнительной информации, в том числе о том, как указать пути в файловой системе, см. «Как начать работу с командами Linux в Windows: Cygwin».

2.файл в WSL

Подсистема Windows для Linux (WSL) — это еще один способ использования утилит Linux в Windows. Подробнее о работе с WSL см. в справочном материале «WSL (подсистема Windows для Linux): советы, инструкции, устранение неполадок».

3. Скомпилированная «файловая» программа для Windows

Файлы отличаются архитектурой (64- и 32-разрядная), а также компилятором.

Распакуйте загруженный архив. Например, я помещаю загруженные файлы в папку C:\Users\MiAl\Downloads\file\.

Откройте командную строку, для этого нажмите Win+x, выберите «Windows PowerShell».

Перейти в папку с программой:

Чтобы определить расширение файла, используйте команду вида:

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

Например, я хочу проверить все файлы в папке Z:\testfiles\, тогда команда выглядит следующим образом:

4. TrID — это кроссплатформенная файловая альтернатива для Windows и Linux

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

Если указать несколько файлов для идентификации, то будет отображаться только наиболее вероятный вариант типа файла:

Установка TRID в Windows

Распакуйте оба файла в одну папку.

Распакуйте загруженный архив. Например, я помещаю загруженные файлы в папку C:\Users\MiAl\Downloads\trid\.

Откройте командную строку, для этого нажмите Win+x, выберите «Windows PowerShell».

Перейти в папку с программой:

Чтобы определить расширение файла, используйте команду вида:

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

Кроме того, использование ключа -ae заставит TrID добавить предполагаемые расширения к именам файлов. Это удобно, например, при работе с файлами, восстановленными программами восстановления данных. Например:

На этом этапе файлы в папке c:\temp будут выглядеть следующим образом:

Вместо этого ключ -ce просто изменит расширение файла на новое; если у файла нет расширения, будет добавлено новое. Например:

  • IAmASoundFile.dat -> IAmASoundFile.wav
  • IAmABitmap -> IAmABitmap.bmp

TrID может получить список файлов из стандартного ввода с помощью переключателя -@.

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

Можно указать TrID, чтобы он показывал дополнительную информацию о каждом совпадении (например, тип MIME, кто создал это определение, сколько файлов было просканировано и т. д.); а также можно ограничить количество отображаемых результатов.

Переключатель -v активирует подробный режим, а -r:nn указывает максимальное количество совпадений, которые будет отображать TrID. Значение по умолчанию: 5 для обычного режима, 2 для подробного анализа, 1 для анализа нескольких файлов.

TrID обновляется нечасто, но база данных регулярно пополняется новыми сигнатурами, поэтому время от времени обновляйте базу данных.

5.fil — еще одна кроссплатформенная альтернатива файлу

Утилита fil написана на Go и является кроссплатформенной. Но подписей в программе так мало, что, на мой взгляд, утилита fil практически бесполезна.

Альтернативные файлы

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

Обнаружить легко

Detect It Easy — это кроссплатформенный инструмент для определения типов файлов. Существует вариант с графическим интерфейсом, а также с интерфейсом командной строки.

Чтобы проанализировать файл /mnt/disk_d/Share/testfiles/file1 и отобразить результаты в графическом интерфейсе:

Чтобы проанализировать файл /mnt/disk_d/Share/testfiles/file1 и отобразить результаты в интерфейсе командной строки:

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

Прогулка по мусору

Binwalk — это программа для анализа встроенного ПО, но она содержит множество сигнатур двоичных файлов, поэтому подходит для определения типа файла. Особенность Binwalk в том, что он нацелен на работу с составными файлами (которые обычно являются прошивками), поэтому может определить тип файла, даже если файла нет в начале.

Использование аналогично файлу, достаточно указать путь к одному или нескольким файлам:

Detect It Easy и Binwalk не столько конкуренты файловой утилиты, сколько «последний шанс» определить тип данных, если файловая команда не помогла.

Продолжение смотрите в статье «Как анализировать и разбивать составные файлы (прошивки, многораздельные образы дисков)».

Читайте также: