アイテムを1つずつ戻すことはできますが、ファイルが多すぎるので、ゴミ箱内のすべてのファイルを復元するにはどうすればよいですか?
MacOSは、削除されたファイルに関するメタ情報を~/.Trash/.DS_Store
に保持します。これには、元の場所のレコードも含まれます。 ~/.Trash/.DS_Store
ファイルをスキャンしてコマンドを出力し、すべてのファイルを元の場所に戻すPerlスクリプトを作成しました。出力は直接シェルに送ることができます。
Perlスクリプト: https://Gist.github.com/cpq/3d58e144a3fc2e47c54a
実行するには、スクリプトをダウンロードし、ターミナルを起動してPerl restore_mac_trash.pl
と入力します
以下は、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
それがFinderで最後に行った作業である場合は、「元に戻す」を使用することをお勧めします。
GUIには、議論しているアクションを実行するための組み込みの方法はありません。
これは、ゴミ箱を空にしていないことを前提としています。
戻すファイルをすべて選択します- Apple Key+Aすべて選択の場合、アイテムを右クリックしてPut Back
を選択します。これにより、一度に複数のアイテムが戻されます。
ゴミ箱に複数のアイテムを「戻す」 https://Gist.github.com/faresd/566125