[97] 多くの [[Unix]] 系の [[OS]] には、 [DFN[MIME magic]] などと称するツールが同梱されています。
これは、[[ファイル]]の先頭の[[バイト]]列から [[MIME型]]を推定するものです。

[98] [[MUA]] その他の[[ソフトウェア]]が[[ファイル]]に [[MIME型]]を与えて送出する時に、
([[Unix]] では [[Windows]] ほど[[拡張子]]がファイル型識別子として重視されないため)
[[MIME型]]を自動または半自動で判別するための手段として採用されています。

* MIME との関係

[3] 
[[ファイル]]の種別の記述のために [[MIME型]]が使われていることから、この名前があります。
本ツールやその挙動が [[MIME]] で規定されているわけではありません。

* 実装

[4] 似たような名前の実装が数多く存在します。

[5] 
ある[[プラットフォーム]]から別の[[プラットフォーム]]への移植や、
その他の親戚関係が存在するものもありますが、
どうやら全部が全部同じ系譜に連なるものでもなさそうです。
(名前や手法の類似性という緩い継承関係まで含めれば、すべて繋がっているとは思われますが。)

-*-*-

[6] 
判定するプログラムの部分と、判定条件を記述した[[データベース]]の部分が分離されている実装が多いように見受けられます。
[[データベース]]だけ独立して管理しているプロジェクトもあります。

[7] 
[[データベース]]の記述には、独自の[[テキストファイル]]形式や、
独自の [[XML]] 形式など、いろいろな方法があるようです。

[8] 
多くの[[プラットフォーム]]が何らかの [[MIME magic]] の[[データベース]]を持っているので、
独自の[[データベース]]を持たずにそれを参照するプログラムも多いです。

* 関連

[2] [[MIME Sniffing]] と似ていますが、 [[MIME Sniffing]] はより限定的で[[標準化]]されたものです。

* メモ

[1] [CITE@en[mod_mime_magic - Apache HTTP Server Version 2.2]]
([TIME[2015-04-18 05:35:13 +09:00]] 版)
<http://httpd.apache.org/docs/2.2/mod/mod_mime_magic.html>