如何从 Mac OS X 中的垃圾中恢复所有文件?

如何从 Mac OS X 中的垃圾中恢复所有文件?

我可以逐一放回垃圾箱,但是文件太多了,如何恢复垃圾箱中的所有文件?

答案1

MacOS 将已删除文件的文件元信息保存在 中~/.Trash/.DS_Store,其中还包含原始位置的记录。我编写了一个 perl 脚本,用于扫描~/.Trash/.DS_Store文件并打印命令以将所有文件移回其原始位置。输出可以直接输入到 shell。

Perl 脚本:https://gist.github.com/cpq/3d58e144a3fc2e47c54a

要运行,请下载脚本,启动终端并输入perl restore_mac_trash.pl

答案2

以下是另一个 AppleScript,类似于 user227282 发布的内容:

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

答案3

如果这是您在 Finder 中执行的最后一项操作,那么使用“撤消”将是首选方法。

GUI 中没有内置方法来执行您正在讨论的操作。

这一切都假设您尚未清空垃圾箱。

答案4

选择要放回的所有文件- Apple Key+A全选,然后右键单击某个项目并选择Put Back。这将一次放回多个项目。

相关内容