С помощью команды file мы можем получить тип файла. File возвращает уникальный ответ для каждого типа файла. Я хочу получить полный список, который этот file может вернуть для Linux и Solaris.

Например, у меня есть частичный список возврата file . К сожалению, я не вижу полный список со страницы руководства.

 ASCII C program text  
 ASCII C++ program text  
 ASCII C program text, with CRLF
 ASCII C program text, with very
 ASCII English text   
 ASCII English text, with CRLF line
 ASCII English text, with escape sequences
 ASCII English text, with very long
 ASCII HTML document text  
 ASCII HTML document text, with very
 ASCII Java program text  
 ASCII Java program text, with CRLF,
 ASCII Java program text, with very
 ASCII make commands text  
 ASCII make commands text, with very
 ASCII text    
 ASCII text, with CRLF line terminators
 ASCII text, with escape sequences 
 a /usr/bin/perl script text executable 
 Bourne-Again shell script text executable 
 Bourne shell script text executable 
 core file (Xenix)   
 C++ program text   
 data     
 exported SGML document text  
 extended 669 module data  
 HTML document text   
 ISO-8859 English text   
 Non-ISO extended-ASCII English text  
 Non-ISO extended-ASCII English text, with CRLF
 Non-ISO extended-ASCII English text, with very
 PC bitmap data   
 PC color icon data  
 PC color pointer image data 
 PC icon data   
 PDF document, version 1.2  
 TOC sound file   
 UTF-8 Unicode text, with CRLF line
 XML document text

1 ответ1

1

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

В Linux file -i показывает тип MIME (например, text/plain , image/jpeg), а не строку, предназначенную для людей. Если вы хотели проанализировать вывод file , вам нужен file -i . Существует официальный список типов MIME , но он не является исчерпывающим: существует множество нестандартных типов. Кроме того, file -i может дополнять тип MIME информацией о кодировании (например, text/plain charset=utf-8).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .