Mac OS X 10.6のゴミ箱には、10.6のインストール後にゴミ箱に移動されたファイルに対して「元に戻す」オプションが表示されます。ただし、ファイルが戻される場所whereは表示されません。
だから:Finderを使用して、ゴミ箱のアイテムがどこから来たのかを知る方法はありますか?
(私は元の場所を知っています に保存されています~/.Trash/.DS_Store
なので、ファイルの出所を本当に知る必要がある場合は、hexdump
のようなものを使用してそれを理解できます。)
人間が読める形式でストアファイルのレコードを読み取ることができる dsstore_dump.pl
ツールを使用できます。
これは、Perlで Wim L によって記述された Mac-Finder-DSStore
プロジェクトの一部であり、OSXによって生成された.DS_Store
ファイルの読み取りと書き込みのルーチンを提供します。参照: dsstore_dump.pl
GitHubおよびmy fork 。
使用例:
$ Perl dsstore_dump.pl ~/.Trash/.DS_Store
&makeEntries("foo.png",
ptbL => "Users/username/Desktop/",
ptbN => "foo.png"
),
このツールのインストールについては、READMEファイルで説明しています。
ターミナルで次のワンライナーを使用して、上記のスクリプトを実行することもできます。
Perl <(curl -s https://raw.githubusercontent.com/kenorb/binfiles/master/dsstore_dump.pl) ~/.Trash/.DS_Store
私はこの問題を見て興味をそそられました。 この関数 に基づいて簡単なFoundationツールを作成し、AppleScriptアプリケーションでラップすることになりました。
http://dl.getdropbox.com/u/896591/PathForTrashItem.Zip
ツールバーに貼り付けると、選択したアイテムのパスが表示されます。私は約束をしません。 :)
パスワードの入力を求められるべきではありません。もしそうなら、何かが奇妙です。 AppleScriptソースを確認したい場合は、AppleScriptEditorでアプリケーションを開くことができます。
2つの主な問題:
.DS_Store
ファイルを(ほとんど)テキストに変換するためのこのターミナルワンライナーを含める:
xxd -p <path/to/.DS_Store> | sed 's/00//g' | tr -d '\n' | sed 's/\([0-9A-F]\{2\}\)/0x\1 /g' | xxd -r -p | strings | sed 's/ptb[LN]ustr//g'