Я бы сделал это, используя приложение под названием launchd
, чтобы открывать скрипт автоматизатора, как часто, как вам нужно (например, каждые несколько секунд). Этот веб-сайт описывает, как его настроить. По сути, вы должны сначала сохранить свой скрипт автоматизатора как приложение в определенной папке (например, «Документы»), а затем написать короткий xml скрипт, который сообщает launchd
, какой файл открывать и как часто это делать.
Ниже приведен пример сценария:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.NAME.test</string>
<key>Program</key>
<string>/Users/USERNAME/Documents/test.app/Contents/MacOS/Application Stub</string>
<key>StartInterval</key>
<integer>5</integer>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Откройте новый документ TextEdit "Простой текст" и вставьте его выше. Замените метку (com.NAME.test
) на то, что вы хотите; Я обычно просто вписываю свое имя и имя сценария. Затем измените строку под Program
на местоположение файла «.app», который вы сохранили ранее, не забывая изменить USERNAME
на ваше имя пользователя. Помните, что /Contents/MacOS/Application Stub
должен находиться сразу после части «.app», чтобы скрипт запускал ваше приложение. Затем измените строку под StartInterval
на количество секунд, в течение которых скрипт должен ждать, прежде чем он снова запустится.
После того, как вы закончите редактирование скрипта, сохраните его в "/ Users / USERNAME / Library / LaunchAgents / com.NAME.test.plist, "конечно, меняя USERNAME
на ваше имя пользователя и com.NAME.test
на метку, используемую в скрипте xml. Если он спросит, хотите ли вы сохранить его с расширением «.plist», выберите «да». После сохранения файла откройте терминал (/Applications/Utilities/Terminal.app) и введите команду launchctl load /Users/USERNAME/Library/LaunchAgents/com.NAME.test.plist
, изменив имя файла на путь к файлу вашего .plist файла. Используйте unload
вместо load
, чтобы остановить запуск сценария.
Для меня значок шестеренки постоянно появлялся в строке меню при каждом запуске сценария, поэтому я обнаружил на это и этот веб-сайт, который вы можете остановить, добавив «Run Shell Script» в самый верх вашего скрипта Automator, а затем набрав в поле killall ScriptMonitor || true
.