通过谷歌搜索“applescript if multiple conditions”浏览了这篇文章并且没有遇到我期望的代码片段,这就是我所做的(只是为了提供信息):
您还可以递归地扫描多个条件。以下示例是: — 查看发件人电子邮件地址是否包含(Arg 1.1)内容(Arg 2.1.1 和 2.1.2) 以立即停止脚本并“通知”=> true (Arg 3.1)。— 查看文件夹/邮箱(Arg 1.2)是否以“2012” (Arg 2.2.1) 开头,但不是文件夹 2012-AB 或 C (Arg 2.2.2),如果它不是以 2012 开头或包含在一个文件夹中3 个文件夹中的一个停止并且什么都不做 => false (Arg 3.2)。
if _mc({"\"" & theSender & " \" contains", "\"" & (name of theFolder) & "\""}, {{"\"@me.com\"", "\"Tim\""}, {"starts with \"2012\"", "is not in {\"2012-A\", \"2012-B\", \"2012-C\"}"}}, {true, false}) then
return "NOTIFY "
else
return "DO NOTHING "
end if
-- 通过 shell 脚本进行多条件比较
on _mc(_args, _crits, _r)
set i to 0
repeat with _arg in _args
set i to i + 1
repeat with _crit in (item i of _crits)
if (item i of _r) as text is equal to (do shell script "osascript -e '" & (_arg & " " & _crit) & "'") then
return (item i of _r)
end if
end repeat
end repeat
return not (item i of _r)
end _mc
https://developer.apple.com/library/mac/#documentation/AppleScript/Conceptual/AppleScriptLangGuide/conceptual/ASLR_about_handlers.html#//apple_ref/doc/uid/TP40000983-CH206-SW3