Экземпляры Crontab

Я проводил некоторые исследования по планированию задач, а что нет. Я наткнулся на командную функцию crontab.

Является ли crontab файлом, который создается, или это команда?

Если это файл, то сколько может иметь один пользователь? Являются ли они специфичными для пользователя или системы (например, если я создаю задачу с использованием crontab, выполнится ли задача, если в систему войдет другой пользователь?)

Если это команда, то где она выполняется? хранить информацию для выполнения задач?

1
задан 9 November 2012 в 03:48

2 ответа

Если Вы интересуетесь планированием задач как учетная запись обычного пользователя в Ubuntu (т.е. Вы не делаете вещей в масштабе всей системы как корня), то необходимо пропустить все специфические особенности cron, crontab, at, и anacron.

Вместо этого посмотрите на приложение Запланированных задач, доступное в Ubuntu через Тире Единицы или подобном меню приложений. Это значительно упрощает работу планирования объектов. Существуют некоторые "глюки", связанные с его использованием, но этот путь Вы ничего не должны делать в командной строке.

Например, у меня есть немного резервного сценария, что я выполняю периодически Запланированные задачи использования. (Программа в основном вставляет объекты в Ваш crontab, и т.д.),

Запланированные задачи обеспечивают два различных взглядов. Одно представление упрощено, как это:

enter image description here

Другое представление показывает то, что показал бы crontab:

enter image description here

Один из "глюков" - то, что Ваш нормальный "ПУТЬ" не доступен для определенного запланированного объекта, таким образом, необходимо быть явными о том, какая команда должна быть выполнена.

Так или иначе, детали cron, crontab, at, и anacron все немного слишком широки для Ubuntu.

0
ответ дан 9 November 2012 в 03:48

Команда crontab -e создаст файл, но вам не нужно знать об этом и никогда не следует редактировать его вручную.

man crontab показывает различные варианты, наиболее важными из которых являются:

  • crontab -e редактировать
  • crontab -l список

Уведомление что ваше окружение как задание cron сильно отличается от того, к которому вы привыкли в интерактивной оболочке. Проще всего проверить это, установив задание cron следующим образом:

* * * * * set > /tmp/environment.log

# | | |  \day of week    0-7 (0 or 7 is Sun, or use names)
# | |  \--month          1-12 (or names, see below)
# |  \----day of month   1-31
#  \------hour           0-23
#\--------minute         0-59

Синтаксис самого crontab проверяется man 5 crontab.

Затем подождите минуту и ​​снова удалите cronjob, потому что в противном случае это бессмысленное задание будет выполняться каждую минуту.

Затем проверьте разницу между интерактивной оболочкой (просто введите set) и cronjob (просто введите cat /tmp/environment). Особенно PATH и SHELL могут вас удивить.

0
ответ дан 9 November 2012 в 03:48

Другие вопросы по тегам:

Похожие вопросы: