我无意中将 4,000 多个文件移到了废纸篓,我想将这些文件移回原来的位置。虽然 Lion 支持此功能(通过 Finder 的“放回”命令),但它只允许您一次放回一个文件。
我找到了一个 AppleScript 脚本,可以自动将文件逐个放回原处。我运行了整整一夜,它基本成功了,但垃圾箱里还剩下 1,700 个文件。
问题是,剩余的文件需要我输入密码才能放回。我相信这些文件是由其他所有者创建的。
我的问题是我该如何解决这个问题?
有没有办法进入超级用户模式,让我不必为每个要取消删除的文件输入密码?
任何帮助是极大的赞赏。
以下是 AppleScript:
repeat 4173 times --or as many files you have
tell application "Finder" to open trash --open the trash folder
tell application "Finder" to activate
tell application "System Events"
tell process "Finder"
delay 0.2 -- adjust delay as needed
key code 125 --move down to get focus on a file
key down command --hold command key
delay 0.2 -- adjust delay as needed
key code 51 --hit delete
key up command --release command
end tell
end tell
delay 0.2 -- adjust delay as needed
tell application "Finder" to close every window --close everything for the next cycle
end repeat
答案1
您还可以模拟输入密码。keystroke "password" & return
当不显示密码对话框时,该部分应该是无害的。我只用几个文件测试了这个脚本,所以可能仍然需要修改。
tell application "Finder"
repeat 4 times
close windows
open trash
activate
tell application "System Events"
key code 125
key code 51 using command down
delay 0.2
keystroke "password" & return
delay 0.2
end tell
end repeat
close windows
end tell
我也尝试使用 以 root 身份打开 Finder sudo /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder
,但放回操作似乎对任何文件都不可用。