Mac OS X Leopardでファイルの関連付けを手動で変更するシステム設定ペインがあることは知っています。しかし、Leopardが実際にこれらの情報をどこに保存するのか興味がありますか?
それらを変更する方法には興味がありません。これらのマッピングが保存されている構成ファイルまたはデータベース(Windowsのレジストリなど)を知りたい。
申し訳ありませんが、この質問は古いですが、答えは本当に間違っています。
Toolbearが述べたように、Doug Harrisの答えは部分的にしか正しくありません。
Launch Services Databaseファイルは、all既知のアプリケーションの情報のallと、それらが処理できるドキュメントのタイプが格納されている場所です。次の場所にあります:
ライオン:
/private/var/folders/**/**/-Caches-/com.Apple.LaunchServices-034501.csstore
ユキヒョウ:
/private/var/folders/**/**/-Caches-/com.Apple.LaunchServices-025501.csstore
ヒョウ:
/Library/Caches/com.Apple.LaunchServices-023501.csstore
/private/var/folders/
フォルダーには、各ユーザーの「安全な」キャッシュと一時フォルダーが格納されます。上記のパスの**は、/dl/dlXWtS5WH9SNboPxxrDIyE+++TI/
のようなものか、推測を防ぐためのあいまいな文字シーケンスです。
名前com.Apple.LaunchServices-025501.csstore
は、Snow Leopardに固有の501
サフィックスに追加されたユーザーID(私のものは-025
)で構成されることに注意してください。 (OS Xの各バージョンでは、Appleは、OS Xの異なるバージョン間の互換性の問題を防ぐために使用される識別サフィックスを変更する傾向があります。Leopardが-023
を使用していることに気づくでしょう)。 Lionは-034
サフィックスを使用しています。
OS Xは「デフォルト」システムを使用します-ここに 良い記事 があり、たくさんの例があります。ファイルは〜/ Library/Preferencesに保存されますが、plistを直接編集するのではなく、「defaults」コマンドを使用して操作することをお勧めします。
ファイルの関連付けは、com.Apple.LaunchServicesドメインの下に保存されます。上記のリンクから、次のコマンドでリストを確認できます。
defaults read com.Apple.LaunchServices | grep -v LSBundleLocator
Launch Servicesの詳細については、Appleの Launch Servicesプログラミングガイド を参照してください。
@Doug Harrisの答えは部分的にしか正しくありません。デフォルトシステムは、ファイルの関連付けに対するローカルの追加または上書きを保存します。ただし、OS Xには、デフォルトでシステム全体に関連付けられています。
lsregister -dump
を実行すると、Launch ServicesがCoreTypes
と呼んでいるものと、アプリケーションが提供する関連付けが表示されます。
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -dump
出力を徹底的にスキャンしていません。そのダンプには他のソースが示されている可能性がありますが、これらのタイプの多くは/System/Library/CoreServices/CoreTypes.bundle
からのものです。型が列挙されている場所に、プレーンテキストまたはplistファイルがある場合があります。関連付けは、既知のアプリケーションの場所にある* .appのコンテンツをスキャンすることから来ると私は信じています。ここで、Launch Servicesは、TextWranglerが多数のファイルタイプのエディターであることを理解します。
--------------------------------------------------------------------------------
bundle id: 10928
path: /Applications/TextWrangler.app
name: TextWrangler
identifier: com.barebones.textwrangler (0x8000008d)
...
library items:
--------------------------------------------------------
claim id: 20216
name: TextWrangler text document
rank: Default
roles: Editor
flags: relative-icon-path
icon: Contents/Resources/TextWranglerTextDoc.icns
bindings: .a, .asm, .asp, .bashrc, .c, .c++, .cc, .cfm, .conf, .cp, .cpp, .cshrc, .css, .cxx, .equ, .f, .f77, .for, .ftn, .h, .h++, .hpp, .htm, .html, .inc, .j, .Java, .js, .jsp, .log, .m, .mm, .p, .pas, .pch, .pch++, .php, .php3, .pl, .plist, .plx, .pm, .ppu, .r, .rb, .rez, .rhtml, .rss, .s, .sql, .shtm, .shtml, .tcl, .tcshrc, .text, .txt, .wml, .xhtml, .xml, .xsl, .xslt, .yaml, 'TEXT'
...
かんたん簡単!それは最も明白な場所ではないということです。
RCDefaultApp prefpaneをインストールして、すべてのファイルの関連付けを1か所で変更することもできます。