我有一个工作的 AppleScript,它的重复看起来像这样:
repeat with i from 1 to count windows of proc
....
end repeat
现在我想把它改成min(2,count windows of proc)
我将如何使用纯 AppleScript 编写此代码?(涉及 Bash 等的解决方案是不可接受的,问题实际上是关于如何从 AppleScript 执行此操作)
我有一个工作的 AppleScript,它的重复看起来像这样:
repeat with i from 1 to count windows of proc
....
end repeat
现在我想把它改成min(2,count windows of proc)
我将如何使用纯 AppleScript 编写此代码?(涉及 Bash 等的解决方案是不可接受的,问题实际上是关于如何从 AppleScript 执行此操作)
没有内置的方法可以做到这一点。您必须自己编写函数:
on min(x, y)
if x ≤ y then
return x
else
return y
end if
end min
...
repeat with i from 1 to min(2, count windows of proc)
...
end repeat
请注意,如果您想min
在 atell ...
或using terms from ...
块内使用,则必须调用它,my min(2, count windows of proc)
以便 AppleScript 知道min
在脚本中查找,而不是在应用程序的条款或您拥有的东西中查找。
另外,请注意:您使用的语言称为 AppleScript,而不是 OsaScript。调用它的命令行工具是osascript
因为它可以与更通用的Open Scripting Architecture一起使用。其他语言(如 JavaScript)可以是 OSA 组件,但实际上,几乎每个人都使用 AppleScript。