我在Mac OS X 10.10(Yosemite)上使用applescript。我注意到击键动作往往比10.9慢得多。
下面是我的AppleScript,告诉终端输入" cd my current path in Finder
"然后按return
:
tell application "Finder"
try
set currentFolder to (folder of the front window)
set currentPath to (POSIX path of (target of the front window as alias))
on error
set currentFolder to desktop
set currentPath to (POSIX path of (desktop as alias))
end try
end tell
tell application "Terminal"
activate
delay 0.5
tell application "System Events"
set cdtocurrentPath to "cd \"" & currentPath & "\"" as string
keystroke cdtocurrentPath
keystroke return
end tell
end tell
以前,在OS X 10.9中,用于输入当前路径的击键非常快(对于长字符串,小于1秒)。然而,在10.10中,它往往非常慢(通常超过3-4s),这样我就能清楚地看到输入的字母。
此外,System Events
中的其他操作也比10.9慢,因此我必须增加delay
使其正常工作的时间。
有人可以解释一下吗?或者提供替代解决方案?谢谢!
答案 0 :(得分:0)
我在10.10的脚本编辑器中对它进行了测试,并且运行时间不到1秒。必须有其他一些问题。
使用do script
命令可能会有所帮助:
tell application "Terminal" to do script "cd \"" & currentPath & "\""