Kako pokrenuti Cron posao svakih 10, 20 i 30 sekundi u Linuxu


Ukratko: cron planer poslova ne podržava planiranje pokretanja poslova u intervalima od sekundi. U ovom članku pokazat ćemo vam jednostavan trik koji će vam pomoći da pokrenete cron posao svakih 30 sekundi ili x sekundi u Linuxu.

Jeste li novi u cron planuru poslova i želite pokrenuti posao svakih 30 sekundi? Nažalost, cron to ne dopušta. Ne možete zakazati pokretanje cron posla svake x sekunde. Cron podržava samo vremenski interval od najmanje 60 sekundi (tj. 1 minuta). Da biste pokrenuli cron posao svakih 30 sekundi, morate upotrijebiti trik koji smo objasnili u nastavku.

U ovom vodiču također ćemo pokriti mnoge druge primjere za pokretanje posla ili naredbe ili skripte svakih x sekundi. Ali počnimo s objašnjenjem kako pokrenuti cron posao svakih 30 sekundi u Linuxu.

Pokreni Cron Job svakih 30 sekundi u Linuxu

Da biste izvršili gornji zadatak, kreirajte dva unosa u crontab. Prvi posao će pokrenuti datumsku naredbu nakon svake minute (60 sekundi), zatim drugi unos koristi sleep naredbu za odgodu na određeno vrijeme (30 sekundi u ovom slučaju) i pozivanje ponovno naredbu datum.

Morate dodati sljedeće unose u crontab (cron tablicu) i otvoriti je za uređivanje pomoću sljedeće naredbe crontab (-e zastavica omogućuje uređivanje):

crontab -e

Dodajte sljedeće cron unose u datoteku.

* * * * * date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log 

Sada ako provjerite sadržaj datoteke /tmp/date.log, trebali biste vidjeti da se naredba datuma pokreće svakih 30 sekundi. Možemo koristiti naredbu cat za pregled datoteke i provjeru vremenskog stupca za potvrdu, kako slijedi:

cat /tmp/date.log

Također možete gledati kako se datoteka ažurira u stvarnom vremenu. Da biste to učinili, koristite naredbu tail s oznakom -f.

tail -f /tmp/date.log

Pokreni Cron Job svakih 10 sekundi u Linuxu

Pogledajmo još primjera. Ovo pokazuje kako pokrenuti cron posao svakih 10 sekundi. Trik je u tome da se jednostavno poigrate s brojem sekundi naredbe sleep:

* * * * * date>> /tmp/date.log
* * * * * sleep 10; date>> /tmp/date.log
* * * * * sleep 20; date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log
* * * * * sleep 40; date>> /tmp/date.log
* * * * * sleep 50; date>> /tmp/date.log

Još jednom, ako gledamo datoteku /tmp/date.log, ona bi se trebala ažurirati svakih 10 sekundi na temelju gornjih crontab unosa:

tail -f  /tmp/date.log

Evo još jednog primjera izvršavanja naredbe datum nakon svakih 15 sekundi:

* * * * * date>> /tmp/date.log
* * * * * sleep 15; date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log
* * * * * sleep 45; date>> /tmp/date.log

Konačno, za pokretanje cron posla svakih 20 sekundi, možete imati nešto poput ovoga:

* * * * * date>> /tmp/date.log
* * * * * sleep 20; date>> /tmp/date.log
* * * * * sleep 40; date>> /tmp/date.log

Također, evo još članaka za vas da naučite raspoređivanje poslova koristeći cron:

  • Kako stvoriti i upravljati Cron poslovima na Linuxu
  • Cron protiv Anacrona: Kako zakazati poslove pomoću Anacrona na Linuxu

Sada znate! Pokazali smo vam različite primjere pokretanja cron posla svake x sekunde u Linuxu. Pročitajte cron man stranice (pokretanjem naredbi man cron i man crontab) za više informacija.

Ako znate neke korisne savjete ili trikove za cron naredbe, podijelite ih u komentarima ispod.