Как настроить работу CRON для запуска каждые 10 секунд в Linux?

Мне нужно запускать задание CRON каждые 10 секунд с момента запуска.

В Linux как запускать задание CRON каждые 10 секунд с момента его запуска?

Я пытаюсь сделать как following-

когда я делаю запрос (или начинаю) в 04:28:34, он должен начинаться в 04:28:44, а не в 4:28:40

Это то, что я сделал, и я пытаюсь,

# m h  dom mon dow   command
*/10 * * * * /usr/bin/wget http://api.us/application/

Что я сделал здесь, чтобы не работать каждые 10 секунд?

Ответ 1

Чтобы уточнить ответ Sougata Bose, я думаю, что OP хочет, чтобы команда запускалась каждые 10 секунд с момента запуска; не через 10 секунд после первой минуты и каждой последующей минуты.

cron имеет разрешение всего 1 минуту (я думаю, что есть и другие инструменты, которые могут иметь более высокое разрешение, но они не являются стандартными для unix).

Поэтому, чтобы решить вашу проблему, вам нужно 60 секунд /10 секунд = 6 заданий хрон, каждое из которых находится в режиме сна.

например запустите crontab -e и добавьте следующие строки в выбранный вами редактор:

* * * * * ( /usr/bin/wget http://api.us/application/ )  
* * * * * ( sleep 10 ; /usr/bin/wget http://api.us/application/ )  
* * * * * ( sleep 20 ; /usr/bin/wget http://api.us/application/ )  
* * * * * ( sleep 30 ; /usr/bin/wget http://api.us/application/ )  
* * * * * ( sleep 40 ; /usr/bin/wget http://api.us/application/ )  
* * * * * ( sleep 50 ; /usr/bin/wget http://api.us/application/ )  

Ответ 2

Вы указали */10 в минутах. Cron допускает, как минимум, одну минуту. Вы можете попробовать это -

* * * * * ( sleep 10 ; /usr/bin/wget http://api.us/application/)

который будет выполняться через каждые 10 секунд со сном.