我有一个脚本,需要从终端运行可执行文件
脚本如下
tell application "Terminal"
activate
set run_cmd to "sudo <path to my executable>"
do script run_cmd
end tell
但这会因错误消息而超时
error "Terminal got an error: AppleEvent timed out." number -1712
我什至尝试使用类似超时的方法
具有5000秒的超时时间
tell application "Terminal"
activate
with timeout of 5000 seconds
set run_cmd to "sudo <path to my executable>"
do script run_cmd
end timeout
end tell
但幸运的是它仍然超时...
有时,并非总是观察到这种行为。我正在使用El Capitan Mac OS。
我有机会在Sierra和High Sierra上进行测试,并且可以在其中正常运行。
任何想法,我们如何解决这个问题?
注意:如果我在运行此脚本之前打开了终端,则它可以正常运行。
预先感谢
答案 0 :(得分:1)
如何尝试这样的事情...
tell application "Terminal" to launch
repeat while application "Terminal" is not running
delay 0.2
end repeat
tell application "Terminal"
activate
set run_cmd to "sudo <path to my executable>"
do script run_cmd
end tell