__MACOSXフォルダーとは何ですか?


152

OSXのユーザーが作成したzipファイルに表示される__MACOSXフォルダーとは何ですか?ファイルの30%を占めるものもあります。

これらの__MACOSXフォルダーを生成しているプログラムと、Macユーザーがこの間違いをどのように回避できますか?


8
それらは非常に刺激的であり、はい、そしてリソースフォークが空であることが多いため、通常は無意味です。しかし、少なくともそれらは無害です。Appleが組み込みのOS Xのもので4 GBを超えるアーカイブサイズにした非標準的なアプローチとは異なり、他のツールを混乱させ、十分に大きなファイルで再び壊れます。そして、さらに悪いことに、各ファイルの2つのコピーを同じ名前で保存することもできます。1つはデータ用で、もう1つはリソースフォーク用です。OSX以前のMacのように、どちらにもアクセスできないことがよくあります。ああ、標準のファイル形式が嫌いなのはなぜですか?
ボビンス

3
@bobince:実際には、リソースフォークは非常に良いアイデアでした...当時。最近では、リソースを個別のファイルとして保存することで同じ効果が得られますが、そのほとんどは標準のファイル形式によく似ています。

16
メタデータ自体には何の問題もありません。Appleが独自のフォーマットを作成し、既存のフォーマットを不当に互換性のない拡張機能で台無しにするというコツを持っているだけです!コンテンツタイプのデータをメタデータとして保持すること自体が素晴らしいことであり、OS Xが代替手段としてWindowsのファイル拡張子のハックに移行しているのは残念です。これは、ファイルシステムがContent-Typeメタデータの保存をサポートしているが、デスクトップがそれを使用しないLinuxほど悪くはありませんが、ファイル拡張子/名前パターンとコンテンツスニッフィングの完全に壊れた混合を好む(urgh!)ため息、OSええ?
ボビンス

@bobince:しかし、はい、少なくとも彼らが作っフォーマット、これはあなたがNTFSのようなものを使用しない限り、少しディレクトリリストを乱雑にし、基本的に1つのiノードおよび抽出された空のリソースフォークごとに1つのブロックを無駄以外の実害を行いません(これはこのような小さなファイルの場合、MFTにファイルの内容を保存します)、その場合は「inode」(MFTエントリ)を無駄にします。
SamB

9
事後修正可能zip -d filename.zip __MACOSX/\*
クリス・ジョンソン

回答:


52

http://www.realsoftware.com/listarchives/gettingstarted/2005-09/msg00328.html

Appleは、OS X 10.3以降のZIPファイルに組み込み機能を提供します。これらのファイルは、AppleがResource Forksを安全に保存した結果です。OS X 10.3以降を実行しているこれらのファイルは決して表示されませんが、Windowsおよび他のオペレーティングシステムはこの特別な形式のリソースフォークを理解しないため、表示されるとおりに表示されます。


4
それは単なるリソースフォークではなく、基本的なファイルコンテンツを超えるものはすべてAppleDoubleファイルに格納されます。Appleはリソースフォークから離れていますが、AppleDoubleコンテナにも格納される拡張属性などに向かっています。
ゴードンデイヴィソン

14
機能のように聞こえます。.zipファイルは、メタデータ部門に意図的に欠けています。メタデータが必要な場合は、Macではなく別の形式を使用してください。適切なzip +メタデータ実装の例:.jar
Zenexer

16
デッドリンク、修正してください。
ルーカス-ベターコーディングアカデミー14

71
「Windowsや他のオペレーティングシステムは理解できないため」-うーん。私はこの種の用語が嫌いです
ジョープランテ14

5
発見されたのは、コマンドラインを使用してMacを使用している場合unzip filename.zip、__ MACOSX /ディレクトリを展開するopen filename.zipことです。
エドワードフォーク

107

これを非常によく説明するリンクがあります。矢田を助けるのは少し遅れていますが、後世のためです。

ウィキペディアのリソースフォークの説明

残りは私の意見です:

@nickf:これらのファイルを見ることは、FLAWであるOS Xバージョンの機能ではありません。人々はデータを作成し、まとめ、さまざまな媒体に保存します。彼らは何が必要か、何が必要でないかを知る必要があります。それを隠すことは彼らを暗闇の中に保ちます。

ユーザーから物事を隠すという古くからの悪い考え:プログラマーは、自分の仕事を達成することの便宜に関心があり、エンドユーザーのドメイン内の何かを悪用して、自分自身を簡単にする。

この場合、彼はメタデータをユーザーのデータスペースに保存し、ユーザーから隠しました。彼は全体像を見逃しました。ユーザーは隠された詳細に気付かないでしょう。彼がデータをパッケージ化し、プログラマーが予期しない場所に出荷すると、不足している部品は出荷されないか、ユーザーも受信者も説明できない不明な部品が到着します。

ユーザーから物事を隠すことは悪いことです。より正確に言えばプログラマーが愚かであるか、怠け者である場合、ユーザーは愚かであると仮定します。

明らかに、この悪い習慣はMACに限定されません。どこにでもあります。これは、プログラマーが独自のスキームに恋をした結果であり、ベンダーはエンドユーザーのニーズよりも自分の目標を優先します。

要するに。

__MACOSX:掃か
れた敷物の下から出現する奇妙な臭いのプログラマーの糞。

プログラマーとベンダー:物事を公開してください。それらを非表示にすると、自分が愚かになり、ユーザーに通知されなくなります。


12
この答えは単なる答えであればより良いでしょう。愚かなプログラマーや怠け者のユーザーについての激しい暴言はそれを損なう。
クリストファージョンソン

1
@pbernatchez実際に、物事がどのように見え、どのように進化したかを学ぶために立ち止まった場合、おそらくあなたはここにあなた自身の、慢な "慢な「落とし物」を残さないでしょう。リソースフォークは(本当に素晴らしい!)実装の詳細であり、Mac OS Xより前のバージョンであり、ユーザーは他のシステムとインターフェイスするときにのみそれらを見つけました。90年代以降、Appleはリソースフォークのない世界にますます移動していますが、互換性を保つために後方に曲げています。「ユーザーのデータスペースにメタデータを保存しますか?」WTF?それを言うには、「メタデータ」と「ユーザーのデータ空間」をどれほどひねりなく定義する必要がありますか?あなたはファイルシステムを嫌う必要があります!
hmijail

3
「ユーザーから物事を隠すことは悪い」。また、すべての種類のユーザーインターフェイス、ライブラリ、および抽象化を嫌う必要があります。また、そろばんよりも高度なプログラミングやコンピューターも必要です。
hmijail

4
これは質問に答えません。この回答を読んだ後、_MACOSXフォルダーに含まれているメタデータや、リソースフォークが何であるかはまだわかりません。私は人々が暴言に同意するという理由だけでこれを支持していると思いますか?
アッテジュボネン

1
私は感情的に満たされた口調は役に立たないことに同意しますが、この回答に正確に述べられているように、時折必要な隠されたものを作成することは本当に悪い考えであることにも絶対に同意します:または(b)受信者が見ることができ、理解できない隠しファイルを出荷します。これらのファイルは表示されるか、他のOSによって「スキップ可能」としてフラグが立てられている何らかの方法でデータをファイルに埋め込む必要があります。非表示のファイルとディレクトリは、ユーザーを保護するために使用する必要があります。
マイクウィリアムソン

16

最後の質問に答えるには:

Macユーザーはどのようにこの間違いを回避できますか?

Mac OS Xユーザーは、Kekaなどのサードパーティのアーカイブユーティリティをインストールし、リソースフォークを使用しないように指示してから、デフォルトのコンプレッサーとして設定できます。


Kekaでこれを行う方法

リソースフォークを使用しないようにKekaに指示する

  1. ファイルなしでKeka開きます(Launchpad、Spotlightなどから)
  2. ⌘ Cmd+ ,を押して設定開きます
  3. 圧縮タブを選択します
    Keka「圧縮」タブ、選択済み
  4. 「Macリソースフォークを除外する(例:.DS_Store)」をチェックします
    「Macリソースフォークを除外する(例:.DS_Store)」というチェックボックス

Kekaをデフォルトのコンプレッサーにする

  1. 同じKeka設定ウィンドウで
  2. [ 全般 ]タブを選択します
    Keka「一般」タブ、選択済み
  3. 「Kekaをデフォルトのコンプレッサー/アンコンプレッサーとして設定」をクリックします[原文]
    ここに画像の説明を入力してください

1
これは、「リソースフォークを使用しないように伝え、それをデフォルトのコンプレッサーとして設定する」という最後の2つのステップに関する情報を追加することで改善できます。
スティーブンC.ハウエル

@ stvn66完了!ただ参考までに、それは通常これらの質問の範囲外であるため、最初はそうしなかったのです。
ベンレジェロ

2
ダウン投票、ごめんなさい。私は、デフォルトのソフトウェアで修正できる問題を修正するためにサードパーティのソフトウェアをインストールするのが好きではありません。クリス・ジョンソンが上で指摘したように、zip -dzipファイルからリソースフォークを削除します。実際、最初にzipを使用すると、最初にリソースフォークが追加されないと思います。
エドワードフォーク

1
@EdwardFalkそれは公平です!この答えは、「常にこのように動作させるにはどうすればよいですか?」「一度このように動作させるにはどうすればよいですか?」1。
ベンレジェロ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.