跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 11.1 Desktop 管理员指南 Oracle Solaris 11.1 Information Library (简体中文) |
MIME 数据库是包含下列信息的文件的集合:
已知的 MIME 类型集合
用于确定文件的 MIME 类型的方法
关于 MIME 类型的元信息
通过位于 $XDG_DATA_HOME/mime 和 $XDG_DATA_DIRS/mime 目录中的一组文件创建 MIME 数据库。如果未设置环境变量,则缺省值分别为 ~/.local/share 和 /usr/local/share:/usr/share。
本指南使用 <MIME> 统指这些目录。如果发现关于同一 MIME 类型的冲突信息,则优先采用在文件中首先发现的信息。
例如,如果采用环境变量的缺省路径,则用于装入 <MIME>/text/plain.xml 文件的指令会装入下列文件:
~/.local/share/mime/text/plain.xml
/usr/local/share/mime/text/plain.xml
/usr/share/mime/text/plain.xml
注 - XDG shared mime info specification(XDG 共享 mime 信息规范)由 X Desktop Group 起草,该规范利用了 XDG base directory specification(XDG 基目录规范)。
MIME 数据库包含下列目录和文件:
<MIME>/packages/
<MIME>//media/subtype.xml
<MIME>/globs
<MIME>/magic
<MIME>/XMLnamespaces
<MIME>/aliases
<MIME>/subclasses
以下是 MIME 数据库中 MIME 目录和文件的列表(包含相应简要说明):
<MIME>/packages/-此目录可以包含任意数量的 XML 文件。每个 XML 文件描述相应的 MIME 类型集合。位于 <MIME>/packages/ 目录中的 freedesktop.org.xml 文件包含所有被广泛使用和认可的缺省 MIME 类型。缺省情况下,freedesktop.org.xml 文件安装在 /usr/share/mime/packages 目录中。
提供新 MIME 类型相关信息的应用程序在此目录中安装单个新 XML 文件。根据应用程序安装位置前缀,在 /mime/package 子目录中创建此文件。例如,安装在 /usr/bin 目录中的应用程序应在 /usr/share/mime/packages 目录中安装新的源 XML 文件。有关 packages 目录中 XML 文件的更多信息,请参见了解 MIME 类型 XML 文件。
<MIME>/media/subtype.xml-这些目录和文件由 update-mime-database 应用程序通过 <MIME>/packages/ 子目录中的源 XML 文件集合自动生成。例如,针对 /usr/share/mime/packages/freedesktop.org.xml 文件中的各个 mime-type 元素,会在 /usr/share/mime/ 目录中创建媒体类型为该 MIME 类型的目录。还会随媒体类型在此目录中创建子类型标识符为该 MIME 类型的 XML 文件。所创建的 XML 文件的内容包括注释和译文、子类指定和别名。
以下示例是 update-mime-database 应用程序使用 freedesktop.org.xml 缺省源 XML 文件生成的文件的内容摘录。
<?xml version='1.0' encoding='utf-8'?> <mime-type xmlns="http://www.freedesktop.org/standards/shared-mime-info" type="text/plain"> <!--Created automatically by update-mime-database. DO NOT EDIT!--> <comment> plain text document </comment> <!-- possibly more translations--> <comment xml:lang="es"> documento de texto sencillo </comment> <comment xml:lang="eu"> testu soileko dokumentua </comment> <comment xml:lang="fi"> perustekstiasiakirja </comment> <comment xml:lang="fr"> document plein texte </comment> <!-- possibly more translations --> </mime-type>
<MIME>/globs-此文件中每行均包含一个 MIME 类型和一个通配模式,中间用冒号分隔。与通配模式匹配的文件将被解析为在冒号前指定的 MIME 类型。关于文件名如何按通配模式匹配,存在一些特殊规则。有关更多信息,请参见 XDG 共享 mime 规范。
此文件也由 update-mime-database 应用程序使用 freedesktop.org.xml 缺省源 XML 文件生成。
<MIME>/magic-这是一个二进制文件,其中包含有关如何通过内容探查(称为“魔法规则”)解析 MIME 类型的信息。魔法规则是包含一个或多个规则的集合,这些规则通过指定在文件开头搜索的文本或二进制数据来定义文件的 MIME 类型。例如,可以设置一个规则,用于检查在文件的字节偏移 0 处是否存在 %PDF- 字符串。如果找到此字符串,则可以将此文件指定到 application/pdf MIME 类型。
此文件也由 update-mime-database 应用程序生成。
<MIME>/XMLnamespaces-此文件包含 XML 名称空间到 MIME 类型的映射。每行包含三个字段:
namespace
localName
MIME type
每个字段由空格分隔。如果 localName 为空,则 namespace 和 MIME type 字段之间会存在两个空格。
此文件也由 update-mime-database 应用程序生成。
<MIME>/aliases-此文件包含每个 MIME 类型的别名列表。别名是另一种类型的 MIME 类型。此文件中的每行包含两个字段:
alias name
MIME type
这些字段使用空格分隔。此文件也由 update-mime-database 应用程序生成。
<MIME>/subclasses-此文件包含 MIME 类型子类及其父 MIME 类型的列表。根据 XDG 共享 mime 规范,如果一个类型的任何实例均为另一个类型的实例,则第一个类型为第二个类型的子类。例如,所有 image/svg 文件同时也是 text/xml、text/plain 和 application/octet-stream 文件。子类关乎格式,而不关乎数据的类别。例如,所有电子表格均不会从通用电子表格类继承。
此文件的格式与 aliases 文件类似。每行包含两个个字段:
subclassed MIME type
parent MIME type
每个字段由空格分隔。此文件也由 update-mime-database 应用程序生成。
要向系统添加新的 MIME 类型或修改关于 MIME 类型的信息,需要了解如何刷新 MIME 数据库。要刷新 MIME 数据库,请使用 update-mime-database 应用程序。例如,如果应用程序将关于新 MIME 类型的信息安装到 /usr/share/mime/packages/diff.xml 文件中,则必须使用 /usr/share/mime 参数调用 update-mime-database 应用程序。
# update-mime-database /usr/share/mime *** * Updating MIME database in /usr/share/mime... ***
通过扫描 <MIME>/packages 目录中的所有源 XML 文件对 MIME 数据库进行刷新。