Answers:
您的问题全都与MIME类型有关。
MIME类型不仅通过文件扩展名(glob模式)解析,而且还通过文件内容(魔术规则)解析。
参见http://library.gnome.org/admin/system-admin-guide/stable/mimetypes-modifying.html.en#-note-id301200:
当没有全局模式或魔术规则与文件匹配时,如果它包含文本数据或二进制数据的应用程序/八位字节流,则将其解析为MIME类型为text / plain。如果文件为空,则默认为文本/纯文本。
因此,正如您所指出的,具有未知扩展名的文件将解析为text / plain,但如果包含二进制数据,则将其解析为application / octet-stream,显示为“ Unknown”(如果您好奇为什么,请搜索的“ application / octet-stream” /usr/share/mime/packages/freedesktop.org.xml
。
如果需要注册新的扩展名并将某个应用程序与之关联,则应首先注册与所需扩展名关联的新MIME类型,然后再将某个应用程序与此新的MIME类型关联。以下链接对此进行了说明:
如果您不需要注册新的扩展名,则看不到任何更改默认行为的原因(将文本数据解析为text / plain)。很自然