Як запустити роботу cron на Mac?


13

Як я можу змусити свій Mac (запуск останньої ОС) виконувати завдання автоматично раз на день? Наприклад, я хотів би, щоб вона автоматично завантажувала копію цього підручника з алгебраїчної геометрії з відкритим кодом раз на день. У мене є відчуття, що комбінація wget і cron має спрацювати, але, після гуглінгу та читання документації на cron, я просто не могла змусити її працювати правильно.


2
Я пропоную вам не використовувати Crontab, а навчитися використовувати Launchd, як уже було запропоновано.
Мартін Марконніні

Відповіді:


9

Я думаю, що в OS X ви повинні використовувати launchctlдля "cron jobs".
Але в іншому випадку ваше завдання повинно бути легко виконати за допомогою кронштейна
sudo crontab -e
55 23 * * * wget http://www.math.columbia.edu/algebraic_geometry/stacks-git/book.pdf

Це повинно працювати щодня о 23:55

Оновлення

Ви повинні вказати вихідне місце WGET за допомогою -O /path/to/file


2
Якщо ви використовуєте запуск, див. Apple.stackexchange.com/questions/3030/…

2
Вам необов’язково потрібно судо. Окремі користувачі можуть мати свої власні копійки
Doug Harris

6

Демон крона можна активувати простим:

sudo touch /private/etc/crontab

Тоді доцільно ввести повний шлях вашого / usr / local / bin / wget (або де він живе). Cron не знає $ PATH вашого користувача. Сподіваюся, це допомагає.


5

Ви можете використовувати Cronnix, який є безкоштовним графічним інтерфейсом для cron:

http://www.macupdate.com/app/mac/7486/cronnix/


1
Кроннікс був офіційно припинений вгору за течією. Він може перестати працювати правильно (або взагалі) в останніх версіях macOS.
Андрій Абрамов

4

Якщо ви вважаєте синтаксис командного рядка (тощо) занадто заплутаним / прихованим, ви можете зайти в інструмент GUI для перегляду / редагування / створення цих завдань.

Раніше я використовував Lingon , який тепер був доступний і в магазині додатків Mac. Мені не потрібно його використовувати дуже часто, але це дуже корисно, коли я це роблю!


1

Більш елегантне рішення (ніж cron) - використовувати сповіщення iCal + Applescript.

Спочатку запустіть редактор AppleScript (розташований під / Application / Utilities) та вставте наступний код:

set the destination_file to ("~/Downloads/book.pdf")

set the contentLink to "http://www.math.columbia.edu/algebraic_geometry/stacks-git/book.pdf"

tell application "URL Access Scripting"
    download contentLink to destination_file replacing yes
end tell

Збережіть сценарій і вийдіть із редактора яблучних сценаріїв.

Відкрийте свій iCal і створіть нову подію на сьогодні, встановивши потрібний час, виберіть "повторити: кожен день" і в якості тривоги "Запустити сценарій" і виберіть свій яблучний сценарій.

Якщо ви хочете отримувати сповіщення про кожне завантаження, ви можете додати ще одну тривогу з повідомленнями "Звук зі звуком", "Дата".


1

Я рекомендую макарони . Його перевага полягає в тому, що коли ви встановлюєте роботу, яку потрібно виконувати один раз на день, вона працює, коли комп'ютер увімкнено, незалежно від часу. Таким чином, ви не пропустите роботу, оскільки комп’ютер був вимкнений у визначений час.

Макарони - це інструмент, який здійснює регулярне обслуговування Mac OS X, включаючи процес привілеїв для ремонту Mac OS X, а також обслуговування в стилі Unix. Ви могли б зробити це самостійно, але хіба у вас немає ще цікавого, що стосується свого часу?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.