Como obter o tipo mime de um arquivo na linha de comando?

56

Estou tentando obter o tipo MIME de um arquivo na linha de comando como uma string impressa (por exemplo. application/vnd.oasis.opendocument.spreadsheet).

Eu procurei como fazer isso e encontrei o xdg-mimecomando.

Ao ler a página do manual ( man xdg-mime), parece que devo executar xdg-mime query filetype FILE. No entanto, quando executo isso com qualquer arquivo, ele não imprime nada e sai.

Existe uma maneira de corrigir isso? Um comando alternativo?

dv3500ea
fonte

Respostas:

89

Usar file --mime-type -b filename

Veja file --helpmais dicas.

Oli
fonte
2

A grande resposta nesta página pode ser colocada em uma função ou script como este:

Exemplo

$ mime_type.sh /etc/passwd  
text/plain

mime_type.sh

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

mime_type $*
Brad Parks
fonte
4
Use a -bbandeira ou --briefem filevez de canalizar para awk.
Emil Vikström
bom ponto .. fixo!
Brad parks