Для того щоб налаштувати час виконання скрипта нам потрібно зробити наступне:
- Перетворити його в виконуваний файл.
- Додати інформацію про його запуску в crontab за допомогою утиліти launctl.
Розберемо як це зробити крок за кроком.
Пакуємо скрипт в виконуваний файл
Для прикладу напишемо простий скрипт, який буде відкривати додаток Mail і відображати нагадування про те, що треба не забути написати лист.Зберігаємо цей текстовий файл під ім'ям example.command. Робимо це в кореневому каталозі поточного користувача. Тепер відкриваємо «Термінал» і вводимо там таку команду:
Тепер файл example.command став виконуваними. Якщо клікнути на файлі example, command в Finder, то програма виконається і з'явиться вікно з нагадуванням відправити лист.
Налаштовуємо час виконання виконуваного файлу
Створюємо файл з наступним змістом:
У параметрі StartInterval вказується через який проміжок часу необхідно повторювати виконання скрипта. Значення прописується в секундах.
Назвемо файл com.irina.crontabtest.plist і збережемо його в папці $ HOME / Libraries / LaunchAgents.
Тепер увійдемо в систему і повідомимо утиліті launchtl про те, що в розклад потрібно додати нову дію.sudo launchctl load /Libraries/LaunchAgents/com.irina.crontabtest.plist
Якщо у виконанні дії відпала необхідність, то його можна скасувати за допомогою команди unload.
Варто звернути увагу, що для додавання будь-яких команд в розклад необхідні права суперкористувача (root).
Як змусити скрипт виконуватися в певний день тижня?
Для цього в файлі з розширенням plist замість параметра StartInterval необхідно прописати параметр SetCalendarInterval. приклад:
Ці рядки говорять нам, що програму, зазначену в файлі, треба виконувати щосуботи о 3 годині 15 хвилин.
Що ще почитати: