Автоматизація рутини в os x

Автоматизація рутини в os x

Для того щоб налаштувати час виконання скрипта нам потрібно зробити наступне:

  1. Перетворити його в виконуваний файл.
  2. Додати інформацію про його запуску в crontab за допомогою утиліти launctl.

Розберемо як це зробити крок за кроком.

Пакуємо скрипт в виконуваний файл

Автоматизація рутини в os x
Для прикладу напишемо простий скрипт, який буде відкривати додаток Mail і відображати нагадування про те, що треба не забути написати лист.

Зберігаємо цей текстовий файл під ім'ям example.command. Робимо це в кореневому каталозі поточного користувача. Тепер відкриваємо «Термінал» і вводимо там таку команду:

Тепер файл example.command став виконуваними. Якщо клікнути на файлі example, command в Finder, то програма виконається і з'явиться вікно з нагадуванням відправити лист.

Налаштовуємо час виконання виконуваного файлу

Створюємо файл з наступним змістом:

У параметрі StartInterval вказується через який проміжок часу необхідно повторювати виконання скрипта. Значення прописується в секундах.

Назвемо файл com.irina.crontabtest.plist і збережемо його в папці $ HOME / Libraries / LaunchAgents.

Автоматизація рутини в os x
Тепер увійдемо в систему і повідомимо утиліті launchtl про те, що в розклад потрібно додати нову дію.

sudo launchctl load /Libraries/LaunchAgents/com.irina.crontabtest.plist

Якщо у виконанні дії відпала необхідність, то його можна скасувати за допомогою команди unload.

Варто звернути увагу, що для додавання будь-яких команд в розклад необхідні права суперкористувача (root).

Як змусити скрипт виконуватися в певний день тижня?

Для цього в файлі з розширенням plist замість параметра StartInterval необхідно прописати параметр SetCalendarInterval. приклад:

Ці рядки говорять нам, що програму, зазначену в файлі, треба виконувати щосуботи о 3 годині 15 хвилин.

Що ще почитати:

Схожі статті