crontab -e, затем 0 * * * * = каждый час ... Где хранится


14

После sudo crontab -e (написано "/tmp/crontab.XXXX70pN9h" 1L, 19C 1,1 Все

Затем я сохранил файл. И проверить ..? (как? я не знаю)

And to check I 
ps -e | grep cron
29818 ?        00:00:00 cron

Итак .. но я решил проверить еще раз, но

sudo cat /etc/cron.hourly
cat: /etc/cron.hourly: Is a directory
xi@localhost ~ $ sudo ls /etc/cron.hourly

Ничего! то есть в каталоге

Как я понимаю первый 0 в часовом положении означает каждый час?


Хорошо, я подожду час (самый маленький пробел в документации)
Xsi

Вы определенно хотите проверить мой вопрос. Он содержит ответ Stephane Chazelas, который объясняет, как вы можете создать интерактивную оболочку, идентичную среде, которую увидит ваша работа cron. Если вы пройдете его маленькую процедуру, вы получите подсказку и сможете шаг за шагом протестировать ваш cronjob и посмотреть, где он не работает. unix.stackexchange.com/a/56503/16841 Конечно, это не на 100% соответствует вашему вопросу, но может помочь вам решить проблемы crontab.
Джиппи

Ответы:


24

Поля в cron:

m      h       dom             mon     dow          command
Minute Hour    Day of Month    Month   Day of week  <command>

А 0 * * * * <command>затем ваш переводится как «Выполнять команду каждый час, каждый день, каждый месяц и каждый будний день, если минута равна 0»

Вы можете перечислить свой crontab, используя crontab -l, как уже говорилось, delh.

Возьмите эту ссылку здесь, есть несколько практических примеров Cron


date [-u | --utc | --universal] [MMDDhhmm [[CC] YY] [. ss]] это как, но наоборот
Xsi

Какое это имеет отношение к cron?
Бонси Скотт

9

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


Пт 9 ноября 15:16:01 EET 2012 xi @ localhost ~ $ ls /var/log/cron.log ls: невозможно получить доступ к /var/log/cron.log: нет такого файла или каталога
Xsi

3

Вы можете проверить, установлен ли crontab, используя:

sudo crontab -l

Каждый час должно появляться сообщение о /var/log/syslogтом, что оно было выполнено.

Дальнейшее чтение:

http://www.linuxweblog.com/crotab-tutorial

Я считаю, что первый ноль (0) это минуты. Но если вы говорите, что хотите что-то сделать, когда минут 0, это будет выполняться каждый час. Так как только раз в час минуты равны нулю.


2

Вы можете просто запустить cron с помощью следующего урока

http://answergig.com/48/please-provide-some-linux-cron-job-examples?show=48#q48

0 * * * *  /path

1
Обычно нам не очень нравятся ответы только на ссылки, потому что ссылки могут со временем исчезнуть. Можете ли вы воспроизвести, возможно, основные этапы связанной страницы?
Бернхард

1

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


Не так много, вероятно, не должно, как не должно . cronДемон не заметит изменения при редактировании файлов напрямую. Вместо этого используйте crontab -lдля перечисления для текущего пользователя, crontab -eдля редактирования для текущего пользователя и / или -u {user}также для доступа к этому другому пользователю crontab. Это все хорошо определено в справочной странице дляcrontab .
Ройма

Я считаю, что есть способы установить cronавтоматическую проверку файлов на наличие изменений, если вам действительно нужно обновить их вручную.
Молимо

Если вам нужно обновить их вручную, используйте crontabинтерфейс; вот для чего это. В противном случае вам придется остановить и перезапустить cronдемон.
Ройма
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.