Я возился с AppleScript и Automator, чтобы заставить эту штуку работать, но я просто не могу обернуться. Если бы кто-нибудь мог показать мне пример или дать несколько советов о том, как настроить приложение на закрытие в определенное время, а затем перевести компьютер в спящий режим или выключить его, это было бы очень полезно.
applescript
sleep-wake
script
applications
Томас Ричардсон
источник
источник
at
не то, что вам нужно.cron
илиlaunchd
. Если вам нужен более простой интерфейс для настройки, возможно, Lingon 3 поможет.Ответы:
Я предполагаю, что вы хотели бы начать эту процедуру, а не запускать ее в запланированное время.
Мой подход состоял бы в том, чтобы инициировать это из командной строки, но любые команды могут быть выполнены в компоненте сценария оболочки сценария Automator с некоторыми изменениями. Следующий подход объединяет несколько компонентов для выполнения работы:
tell
Команда , чтобы выйти из приложения1. Сообщаем, чтобы приложение вышло
Это может быть так просто, как:
2. Перевод компьютера в спящий режим
Ознакомьтесь с
pmset
более подробной информацией, но, введя следующую команду, вы переведете компьютер в спящий режим:3. Планирование операции для запуска в определенное время
Посмотрите на команду. Эта команда дает вам возможность указать время выполнения команды. Вам нужно будет включить эту функцию, так как она не включена по умолчанию. Чтобы включить
atrun
демон, выполните следующую команду [ссылка на SU] :После включения
atrun
любую команду можно запланировать на определенное время, выполнивкоторый работает, потому что
at
принимает его входstdin
по умолчанию. Более простой подход - запуск команд, перечисленных в файле. Файл может быть выполнен с использованием-f
флага, за которым следует имя сценария, который будет выполняться следующим образом:Собираем все вместе
Далее следует, что
atrun
это включено. В качестве примера, скажем, я хочу выйти из Mail и перевести компьютер в режим сна в 11 вечера. Я хотел бы создать файл, содержащий команды, которые я хочу выполнить следующим образом:Сохраните этот файл
quit-and-sleep
и затем запустите в командной строкеПредостережения
Я не проверял, чтобы Почта действительно закрылась. Сценарий также предполагает, что ничто другое не помешает перевести компьютер в спящий режим. Я сохранил это просто здесь как отправную точку для того, что вы хотите.
источник
Вот строго яблочная версия, которая выполняет это, учитывая жестко запрограммированное значение времени. Конечно, вы можете сделать эту часть интерактивной, если хотите. Кроме того, эта версия предполагает, что временная строка относится к сегодняшнему дню.
источник
Вы можете запланировать событие один раз с:
Или, чтобы запланировать его повторение каждый день, отредактируйте crontab
EDITOR=nano crontab -e
и добавьте следующую запись:источник
Вот код, который будет ждать несколько секунд, прежде чем выйти из текущего приложения и перейти в спящий режим.
источник