2010-01-04 4 views
13

Я пытаюсь настроить автоматическую транзакцию svn для работы в получасовом режиме под mac os 10.6, но crontabs, которые я добавляю в cron, кажется, не действителен и/или, похоже, даже не смотрят на cron. Для тестирования я сделал простой кронтаб и сценарий:cron jobs under mac os 10.6 snow leopard

Crontab: */2 * * * * /Users/username/crontest

, где имя пользователя заменяется моей системы имя пользователя, тем самым указывая на мой домашний каталог (и да, это на самом деле вкладки между каждым значением - они неверно воспроизводятся в разделе code)

Сначала я запускаю crontab -r, а затем бежит crontab .mycrontab, который содержит указанную выше строку. crontab -l выплескивает линию выше, и работает ps -A | grep cron показывает /usr/sbin/cron работает, что я предполагаю, это демон cron под mac os x. /Users/username/crontest скрипт просто добавив строку текста в текстовый файл, например, как:

echo "hi" >> /Users/username/crontest.txt

Что это дает? Я в тупике.

ответ

14

Упс ... Мне не хватало символа новой строки в конце задания cron. Кажется, это исправлено.

+2

Просто, чтобы быть ясным, у меня была аналогичная проблема и добавление дополнительной строки в мой файл при запуске contrab -e исправлено. Ick. –

5

Хотя предпочтительный метод для OS X для запуска автоматизированных заданий - launchd, cron по-прежнему поддерживается. Скорее всего, у вас есть проблемы с правами доступа к вашему скрипту; убедитесь, что у него есть разрешение на выполнение.

Также, */2 означает каждые две минуты, а не почасово. Попробуйте установить поле минут со списком минут:

0,30 * * * * /Users/username/crontest 

Работает для меня на 10.6.

+1

Спасибо за подсказку. Боковое замечание. По-моему, я не уточнил в своем первоначальном вопросе, что, хотя мое окончательное задание cron предназначалось для работы в полчаса, моя тестовая работа cron на самом деле предназначалась для запуска каждые две минуты. – jtrim

Смежные вопросы