使用AppleScript将邮件移动到废纸篓

时间:2012-02-11 20:15:43

标签: applescript apple-mail

我编写了一个由Mail规则调用的脚本。我希望脚本在某些条件下将邮件移动到垃圾箱。它没有用,所以我已经评论了测试,它仍然无法正常工作。我从在线教程中获得了代码。教程将消息移至“已归档”。当我通过移动到垃圾箱替换对脚本的调用时,规则本身有效。这是我正在测试的内容:

using terms from application "Mail"
on perform mail action with messages these_messages for rule this_rule
    tell application "Mail"
        set the message_count to the count of these_messages
        repeat with i from 1 to the message_count
            set this_message to item i of these_messages

            --              try
            --                  set this_content to (every character of content of this_message) as Unicode text
            --                  if this_content is in {"", "?"} then error
            -- if "bowles" is not in this_content and "patton" is not in this_content then
            set mailbox of this_message to mailbox "Trash"
            -- end if
            --              on error error_message
            --                  set this_content to "NO CONTENT"
            --              end try
        end repeat
    end tell
end perform mail action with messages

结束使用

中的条款

有争议的陈述是:将this_message的邮箱设置为邮箱“Trash”

其余的活动代码来自AppleScript编辑器模板。

谢谢, 简略的

P.S。有没有关于将AppleScript与Mail一起使用的书籍?

2 个答案:

答案 0 :(得分:3)

您应该说,而不是试图将邮件“移动”到垃圾箱 delete this_message

Mail.app将根据您的帐户设置(邮件首选项> 帐户>(您的帐户)> 邮箱行为> 已删除邮件)并将邮件移至其帐户的“已删除邮箱”邮箱,或者根据您的设置立即将其删除。

答案 1 :(得分:2)

在问这里之前,我应该做一个更广泛的网络搜索。希望这个答案对其他人有用。我添加了下面的第一行,并修改了上面代码中的第二行。

        set theAccount to account of mailbox of this_message
        set mailbox of this_message to mailbox "Trash" of theAccount