Я пишу код на 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 ответ1

0

Я предполагаю, что вы создали задание cron, но вы получаете ошибки при его запуске. Было бы полезно сообщить нам, что это за ошибки, но наиболее частая проблема, возникающая у людей с заданиями cron, - это не указание полного пути в командах и файлах, или отсутствие какого-либо другого набора переменных среды, необходимого для задачи.

Запуская ваш скрипт при локальном входе в систему, вы получаете другой набор путей среды, которые не обязательно будут присутствовать, когда cron выполнит ваш скрипт. Если ваш сценарий ожидает, что текущий рабочий каталог будет где-то конкретным, убедитесь, что вы cd к этому каталогу внутри сценария, который вы запускаете.

По сути, когда вы создаете скрипт, который хотите запустить, убедитесь, что вы:

  1. Укажите все пути полностью

  2. Изменить каталог, если это необходимо

  3. Установите любые переменные окружения, которые требуются для вашего скрипта / команд

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .