Я предполагаю, что вы хотели бы начать эту процедуру, а не запускать ее в запланированное время.
Мой подход состоял бы в том, чтобы инициировать это из командной строки, но любые команды могут быть выполнены в компоненте сценария оболочки сценария Automator с некоторыми изменениями. Следующий подход объединяет несколько компонентов для выполнения работы:
tell
Команда , чтобы выйти из приложения
- Вызов из командной строки, чтобы перевести компьютер в спящий режим
- Вызов из командной строки для расписания 1 и 2 на определенное время.
1. Сообщаем, чтобы приложение вышло
Это может быть так просто, как:
osascript -e 'tell application "AppName" to quit'
2. Перевод компьютера в спящий режим
Ознакомьтесь с pmset
более подробной информацией, но, введя следующую команду, вы переведете компьютер в спящий режим:
pmset sleepnow
3. Планирование операции для запуска в определенное время
Посмотрите на команду. Эта команда дает вам возможность указать время выполнения команды. Вам нужно будет включить эту функцию, так как она не включена по умолчанию. Чтобы включить atrun
демон, выполните следующую команду [ссылка на SU] :
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.atrun.plist
После включения atrun
любую команду можно запланировать на определенное время, выполнив
echo "<command>" | at HH:MM
который работает, потому что at
принимает его вход stdin
по умолчанию. Более простой подход - запуск команд, перечисленных в файле. Файл может быть выполнен с использованием -f
флага, за которым следует имя сценария, который будет выполняться следующим образом:
at -f /path/to/file HH:MM
Собираем все вместе
Далее следует, что atrun
это включено. В качестве примера, скажем, я хочу выйти из Mail и перевести компьютер в режим сна в 11 вечера. Я хотел бы создать файл, содержащий команды, которые я хочу выполнить следующим образом:
osascript -e 'tell application "Mail" to quit'
pmset sleepnow
Сохраните этот файл quit-and-sleep
и затем запустите в командной строке
at -f /path/to/quit-and-sleep 23:00
Предостережения
Я не проверял, чтобы Почта действительно закрылась. Сценарий также предполагает, что ничто другое не помешает перевести компьютер в спящий режим. Я сохранил это просто здесь как отправную точку для того, что вы хотите.