Значення «* * / 1 * * *» запису в cron?


14

Якось мені важко зрозуміти перекручування *параметрів за допомогою cron.

Мені хотілося, щоб робота працювала щогодини, і я використовував наведене нижче налаштування:

* */1 * * *

Але це, здається, не справляється з роботою. Може хтось, будь ласка, пояснить значення вище та що потрібно для роботи?


Гаразд, я зараз розумію: проблема полягає у позначці *, я поставив у хвилині місце ... * / 1 та * у годинному місці, мабуть, означають те саме, хоча ..
xyz

1
Власне, це виглядає так, що він би біг щохвилини! Якщо він взагалі не працює, то у вас є ще одна проблема. Що таке рядок після частини, яку ви опублікували?
dotancohen

Відповіді:


24
  • *означає кожен .
  • */nозначає кожен n-й . (Так */1означає кожен 1. )

Якщо ви хочете запускати його лише один раз на кожну годину, вам слід встановити перший елемент на щось інше *, наприклад, 20 * * * *запускати його щогодини в 20 хвилин.

Або якщо у вас є дозвіл на написання /etc/cron.hourly/ (або що б там не було у вашій системі), ви можете розмістити там сценарій.


1
Я думав, що n, означає кожен nth. Яка різниця між n та 1 / n тоді?
xyz

7
nозначає точно на n . Як і вище, 20 означає хвилин 20 . 1/nозначає починаючи з 1, кожен n-й . Однак на практиці це використовується як 1-2/n, що означає в інтервалі від 1 до 2, кожен nth . (Зверніть увагу, що не всі cronреалізації підтримують інтервали.)
manatwork

5
+1, щоб просто залишити його /etc/cron.hourlyна будь-якій сучасній машині. Ми чекали його десятиліттями, і ось для чого це!
Аарон Д. Мараско

2

*/1Є надмірною, ви повинні використовувати *замість цього.

* */1 * * *

не виконує роботу щогодини, виконує її щохвилини!
Для ведення роботи щогодини (о 1:00, 2:00 тощо) використовуйте

0 * * * *  
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.