Як отримати тип файлу mime з командного рядка?


56

Я намагаюся отримати тип файлу mime з командного рядка як друкований рядок (наприклад, application/vnd.oasis.opendocument.spreadsheet).

Я подивився, як це зробити, і знайшов xdg-mimeкоманду.

З прочитання сторінки man ( man xdg-mime), здається, мені слід бігти xdg-mime query filetype FILE. Однак, коли я запускаю це з будь-яким файлом, він нічого не друкує і закриває.

Чи є спосіб це виправити? Альтернативна команда?

Відповіді:


89

Використовуйте file --mime-type -b filename

Подивіться на file --helpдодаткові поради.


2

Великий відповідь на цю сторінку можна помістити в функцію або скрипт , як так:

Приклад

$ mime_type.sh /etc/passwd  
text/plain

mime_type.sh

function mime_type()
{
  file --mime-type -b $*
}

mime_type $*

4
Використовуйте -bпрапор або --briefдля, fileа не для передачі каналів awk.
Еміль Вікстрьом

хороша точка .. фіксовано!
брад парки
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.