在阅读shared-mime-info spec并在/usr/share/mime/packages中添加我自己的类型之后。我已经刷新了数据库:
$ update-mime-database /usr/share/mime我试过gvfs-info,它返回正确的mime。因此unix命令文件使用libmagic,libmagic使用自己数据库/usr/share/misc/magic。我想知道它们是否是一种将xml文件转换为libmagic的魔术文件的方法?
发布于 2012-01-16 18:06:05
你不能,你的mime数据库和libmagic做了两件不同的事情,它们被组合在一起使用。Libmagic读取文件头中的“幻数”,以确定它是哪种类型的文件,并将mime数据库的文件扩展名映射到它的mime类型。
尝试首先根据文件的扩展名确定文件,并使用libmagic作为备份,以防遇到没有扩展名的文件。
您不会只想使用libmagic,因为不能保证任何文件的头中都会有这个“魔术数字”。获得良好的支持来确定每个文件的mimetype每次都是正确的,这可能是棘手的。
如果您想读取.desktop文件,请使用ini解析器。
https://stackoverflow.com/questions/6583608
复制相似问题