Как узнать типы файлов в Linux
Самый простой способ определить тип файла в любой операционной системе — это посмотреть на его расширение (например, .xml, .sh, .c<, .tar и т. д.). Что если у файла нет расширения, как определить его тип?
Читайте также: 7 способов узнать типы файловых систем в Linux
В Linux есть полезная утилита под названием file, которая выполняет некоторые тесты для указанного файла и выводит тип файла после успешного завершения теста. В этой короткой статье мы объясним полезные примеры команды file для определения типа файла в Linux.
Примечание. Чтобы использовать все параметры, описанные в этой статье, у вас должен быть запущен файл версии 5.25 (доступен в репозиториях Ubuntu) или более поздней версии. В репозиториях CentOS имеется более старая версия команды file (file-5.11), в которой отсутствуют некоторые параметры.
Вы можете запустить следующую команду, чтобы проверить версию файловой утилиты, как показано.
file -v
file-5.33
magic file from /etc/magic:/usr/share/misc/magic
Примеры файловых команд Linux
1. Простейшая команда файла выглядит следующим образом: вы просто указываете файл, тип которого хотите узнать.
file etc
2. Вы также можете передать имена файлов для проверки из файла (по одному в строке), которые можно указать с помощью флага -f
, как показано.
file -f files.list
3. Чтобы файл работал быстрее, вы можете исключить тест (действительные тесты включают в себя тип приложения, ascii, кодировку, токены, cdf, сжатие, elf, soft и tar) из списка тестов, созданных для определения тип файла, используйте флаг -e
, как показано.
file -e ascii -e compress -e elf etc
4. Параметр -s
заставляет файл, например, также читать блочные или символьные специальные файлы.
file -s /dev/sda
/dev/sda: DOS/MBR boot sector, extended partition table (last)
5. Добавление параметров -z
предписывает файлу просматривать сжатые файлы.
file -z backup
6. Если вы хотите сообщить информацию только о содержимом сжатого файла, а не о сжатии, используйте флаг -Z
.
file -Z backup
7. Вы можете указать команде file выводить строки типа mime вместо более традиционных, читаемых человеком, используя опцию -i
.
file -i -s /dev/sda
/dev/sda: application/octet-stream; charset=binary
8. Кроме того, вы можете получить разделенный косой чертой список допустимых расширений для найденного типа файла, добавив переключатель -extension.
file --extension /dev/sda
Для получения дополнительной информации и вариантов использования обратитесь к справочной странице команды file.
man file
Вот и все! команда файла — полезная утилита Linux для определения типа файла без расширения. В этой статье мы поделились некоторыми полезными примерами файловых команд. Если у вас есть какие-либо вопросы или мысли, которыми вы хотите поделиться, воспользуйтесь формой обратной связи ниже, чтобы связаться с нами.