web-dev-qa-db-ja.com

Mac OS X SnowLeopardのゴミ箱から1つのファイルを削除する

Mac OS X の以前のバージョンでは、ターミナルウィンドウを開いてrm ~/.Trash/file_i_want_to_deleteと入力すると、ゴミ箱からファイルを削除できました。この前の投稿を参照してください。

Mac OS X Snow Leopardの以前のバージョンとは異なり、ファイルをゴミ箱から元のディレクトリに「戻す」ことができます。

rmトリックは引き続き機能しますか?テストでは、ファイルが削除されることが示されていますが、ファイルが削除されたディレクトリを指定する「プットバック」情報はどうなりますか?

6
SteveTheOcean

Mac OS Xはリソースフォークを更新していません:

デスクトップにテストファイル(プレーンテキストファイル)test.txtを作成する場合は、ターミナルに移動して実行することにより、ファイルにリソースフォークがあるかどうかを確認します。

cd ~/Desktop
ls -l test.txt
ls -l test.txt/rsrc

これは、テキストファイルのサイズをリストし、次にリソースフォーク(rsrc)のサイズをリストします。このrsrcサイズが0の場合、このファイルに使用できるリソースフォークはありません。すべてが順調であれば、リソースフォークはありません。

デスクトップのファイルをごみ箱フォルダに入れます。次に、ターミナルで次の手順を実行します。

cd ~/.Trash
ls -l test.txt/rsrc

ここにはまだリソースフォークは表示されていません。

。Trashフォルダーの.DS_Storeファイルに:16進エディターをインストールします(例: http://ridiculousfish.com/ hexfiend /

test.txtファイルを元に戻します。 (そして、ごみ箱フォルダでFinderウィンドウを閉じます。)。DS_Storeファイルを使用してターミナルから16進エディタを開きます。

cd ~/.Trash
/Applications/Hex\ Fiend.app/Contents/MacOS/Hex\ Fiend .DS_Store 

ご覧のとおり、ほとんど空です(16進数を表示するオプションをオフにします)。16進エディターを閉じます。

test.txtファイルをゴミ箱に移動し、16進エディターで.DS_Storeファイルを再度開きます。これで、ファイルの元のパスと現在のファイル名がごみ箱フォルダに表示されます。

したがって、実際、プットバック情報は.DS_Storeファイルに格納されます。

4
Max

私のguessは、その情報がファイルのどこかに保存されているということです リンクテキスト。DS_Store ファイルまたは実際のファイルの リソースフォーク 。いずれにせよ、それが蓄積したり、蓄積しすぎたりすることはありません。

1
Josh K

「プットバック」情報は、ごみ箱フォルダの.DS_Storeファイルに保存されます。

別のファイルをゴミ箱に入れるたびに、Mac OSXは.DS_Storeファイルを更新します。

ファイルを手動で(rmコマンドを使用して)削除した場合、Mac OSXはゴミ箱の.DS_Storeファイルを更新しません。

ゴミ箱から手動でファイルを削除することもできますが、.DS_Storeは削除されず、時間の経過とともに見た目が大きくなります。
そのため、時々穴のゴミ箱を削除する必要があります。

1
Studer