AppleScript newbie:尝试创建一个脚本,删除包含单词';别名';以其名义

AppleScript newbie:尝试创建一个脚本,删除包含单词';别名';以其名义,applescript,keyword-search,Applescript,Keyword Search,我对我的新电脑进行了时间加工,这样我可以更容易地迁移到我的新Mac电脑上。出于某种原因,Time Machine决定为我的下载文件夹中的每个文件(我大约有300个文件)制作一个别名,这让我非常恼火 我试着写一个脚本来解决我的问题,但我就是想不明白为什么这样不行 try tell application "Finder" delete (every item of folder (path to downloads folder) whose name ends with " alia

我对我的新电脑进行了时间加工,这样我可以更容易地迁移到我的新Mac电脑上。出于某种原因,Time Machine决定为我的下载文件夹中的每个文件(我大约有300个文件)制作一个别名,这让我非常恼火

我试着写一个脚本来解决我的问题,但我就是想不明白为什么这样不行

try

tell application "Finder"

    delete (every item of folder (path to downloads folder) whose name ends with " alias")

end tell

end try

如果有人能帮助我,那就太好了。

删除命令只喜欢单个项目,而不喜欢列表,因此可以通过迭代来处理它。此外,如果可以,请使用“系统事件”进行此类操作。。。它更稳定。 下面是一个有效的脚本:

set theFolder to (path to downloads folder)

tell application "System Events"
    set itemList to (disk items of downloads folder whose name ends with " alias")
    repeat with thisItem in itemList
        delete thisItem
    end repeat
end tell
删除名称以“alias”结尾的文件 要从下载文件夹中删除名称以“别名”结尾的文件,请使用:

告诉应用程序“系统事件”删除(名称以“别名”结尾的下载文件夹文件)
重要提示:匹配以“别名”结尾的文件名并不确保要删除的文件是真实的别名。任何真实文件的名称也可以以“别名”结尾,在这种情况下,它们也将被删除


删除类型为“Alias”的文件

从下载文件夹中删除实际别名,请考虑匹配文件,其<代码>类<代码>为<代码>别名> />代码>

告诉应用程序“系统事件”删除(下载文件夹的文件,其类型为“别名”)

注意:这种方式可以避免删除任何名称以“alias”结尾的真实文件。

而在文件列表上使用
重复
循环来删除带有系统事件的文件也没有什么错,System Events
delete
命令可以一次删除多个文件,而无需使用
repeat
循环,如RobC的回答所示。我先这么做了,发现它不可靠。耸肩