Расписание задач через оболочку в Mac OS X
Я пишу код на C++ и хотел бы, чтобы каждые 60 минут код "загружался" в мой внешний SVN-репозиторий. Для этого я просто делаю "svn ci -m" некоторые комментарии ", но я хочу сделать это автоматически, поэтому забудьте об этом. Я работаю в Mac OS X, поэтому я подумал об использовании crontab, но получил некоторые ошибки, и я могу не заставить его работать. Знаете ли вы о лучшем решении?
PS Это то, что я сделал. Сначала "crontab -e", затем добавили строку
mac:temp john$ crontab -l
# m h dom mon dow command
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /Users/john/Desktop/temp/add.sh
и я проверил, что скрипт add.sh имеет разрешения на выполнение. Я точно не получаю ошибку, дело в том, что скрипт, который должен запускаться каждые 5 минут, вообще не запускается. То же самое работает в Linux
1 ответ
Я предполагаю, что вы создали работу cron, но вы получаете ошибки при ее запуске. Было бы полезно сообщить нам, что это за ошибки, но самая частая проблема, с которой сталкиваются люди с заданиями cron, - не указание полного пути в командах и файлах или отсутствие какого-либо другого набора переменных среды, необходимого для задачи.
Запуская ваш скрипт при локальном входе в систему, вы получаете другой набор путей среды, которые не обязательно будут присутствовать, когда cron выполнит ваш скрипт. Если ваш сценарий ожидает, что текущий рабочий каталог будет определенным, убедитесь, что вы cd
в этот каталог в скрипте, который вы запускаете.
По сути, когда вы создаете скрипт, который хотите запустить, убедитесь, что вы:
Укажите все пути полностью
Изменить каталог, если это необходимо
Установите любые переменные окружения, которые требуются для вашего скрипта / команд