Яблочный скрипт истекает при запуске терминала

У меня есть скрипт, в котором мне нужно запустить исполняемый файл из терминала

сценарий как ниже

    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, и там все работает хорошо.

Любая идея, как мы можем решить эту проблему?

Примечание: если я открою терминал перед запуском этого скрипта, он будет выполнен без проблем.

заранее спасибо

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
Другие вопросы по тегам