Mimetype --stdin sempre retorna texto/simples

Mimetype --stdin sempre retorna texto/simples

Estou tendo dificuldade em obter as informações corretas do tipo MIME sem recorrer à extensão do arquivo/dados do inode. Ao usar magia, ele retorna com texto/simples sempre, independentemente de qual seja o arquivo.

Para obter algumas informações básicas.

Quando eu permito que o linux mimetype use glob e seus outros métodos, ele funciona corretamente.

mimetype mountain.jpg

montanha.jpg: image/jpeg

Quando tento fazer com que funcione com verificação mágica, porque quero realmente ter certeza de que este arquivo é uma imagem, ele me diz que é um arquivo de texto

mimetype -M mountain.jpg

montanha.jpg: image/jpeg

Para ter certeza de que não é um arquivo de texto, usarei o comando file

file -i mountain.jpg

montanha.jpg: imagem/jpeg; conjunto de caracteres=binário

Se eu tentar uma das opções a seguir, agora só poderei obter texto/simples.

cat mountain_dew-400-400.jpg | mimetype -M --stdin

STDIN: texto/simples

tee mountain_dew-400-400.jpg | mimetype -M --stdin

STDIN: texto/simples

mimetype --stdin - < mountain_dew-400-400.jpg

STDIN: texto/simples

Já executei os seguintes comandos

cpan install IO::Scalar
cpan install File::MimeInfo
cpan install File::MimeInfo::Magic

Responder1

mimetype --stdinnão parece funcionar de todo. eu envieiBug do Debian #784545.

Como solução alternativa, você pode usar file -i -em vez de mimetype --stdin.

informação relacionada