linux – 如何找出文件的MIME类型(Content-Type)?

有没有办法找出Linux bash脚本中的文件的MIME类型(或称为“Content-Type”?)?

我需要它的原因是因为ImageShack似乎需要它来上传文件,因为它将某个.png文件检测为应用程序/八位字节流文件.

我检查了文件,它确实是一个PNG图像:

$cat /1.png 
?PNG
(with a heap load of random characters)

这给了我错误

$curl -F "fileupload=@/1.png" http://www.imageshack.us/upload_api.PHP
<links>
<error id="wrong_file_type">Wrong file type detected for file 1.png:application/octet-stream</error>
</links>

这有效,但我需要指定MIME-TYPE.

$curl -F "fileupload=@/1.png;type=image/png" http://www.imageshack.us/upload_api.PHP

解决方法:

使用文件.例子:

> file --mime-type image.png
image.png: image/png

> file -b --mime-type image.png
image/png

> file -i FILE_NAME
image.png: image/png; charset=binary

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...