web-dev-qa-db-ja.com

Mac OS Xでゴミ箱からすべてのファイルを復元する方法は?

アイテムを1つずつ戻すことはできますが、ファイルが多すぎるので、ゴミ箱内のすべてのファイルを復元するにはどうすればよいですか?

11
xdazz

MacOSは、削除されたファイルに関するメタ情報を~/.Trash/.DS_Storeに保持します。これには、元の場所のレコードも含まれます。 ~/.Trash/.DS_Storeファイルをスキャンしてコマンドを出力し、すべてのファイルを元の場所に戻すPerlスクリプトを作成しました。出力は直接シェルに送ることができます。

Perlスクリプト: https://Gist.github.com/cpq/3d58e144a3fc2e47c54a

実行するには、スクリプトをダウンロードし、ターミナルを起動してPerl restore_mac_trash.plと入力します

3
valenok

以下は、user227282が投稿したAppleScriptのようなものです。

repeat
    tell application "Finder"
        close windows
        if items of trash is {} then return
        open trash
        activate
    end tell
    tell application "System Events"
        key code 125 -- down arrow
        key code 51 using command down -- command-delete
    end tell
end repeat

AppleScriptエディターに貼り付けてcommand-Rを押すと、スクリプトを実行できます。遅延は必要ありませんでした。

Finderがアイテムを戻そうとしたときにパスワードダイアログが表示される場合は、tell application "System Events"ブロックの最後に次のようなものを追加してみてください。

delay 1
if exists window 1 of process "SecurityAgent" then
    tell window 1 of process "SecurityAgent"
        set value of text field 2 of scroll area 1 of group 1 to "pa55Word"
        click button 2 of group 2
    end tell
end if
delay 1
2
Lri

それがFinderで最後に行った作業である場合は、「元に戻す」を使用することをお勧めします。

GUIには、議論しているアクションを実行するための組み込みの方法はありません。

これは、ゴミ箱を空にしていないことを前提としています。

0
Jonathan

戻すファイルをすべて選択します- Apple Key+Aすべて選択の場合、アイテムを右クリックしてPut Backを選択します。これにより、一度に複数のアイテムが戻されます。

0
A C

ゴミ箱に複数のアイテムを「戻す」 https://Gist.github.com/faresd/566125

0
Faresd