Cron-työn suorittaminen 10, 20 ja 30 sekunnin välein Linuxissa


Lyhyesti: cron-töiden ajoitus ei tue töiden ajoittamista ajettavaksi sekuntien välein. Tässä artikkelissa näytämme sinulle yksinkertaisen tempun, joka auttaa sinua suorittamaan cron-työn 30 sekunnin tai x sekunnin välein Linuxissa.

Oletko uusi cron-työn ajastimessa ja haluat suorittaa työn 30 sekunnin välein? Valitettavasti cron ei salli sitä. Et voi ajastaa cron-työtä suoritettavaksi joka x sekunti. Cron tukee vain vähintään 60 sekunnin (eli 1 minuutin) ajanjaksoa. Jos haluat suorittaa cron-työn 30 sekunnin välein, sinun on käytettävä alla selittämäämme temppua.

Tässä oppaassa käsittelemme myös monia muita esimerkkejä työn tai komennon tai komentosarjan suorittamisesta x sekunnin välein. Mutta aloitetaan kattamalla cron-työn suorittaminen 30 sekunnin välein Linuxissa.

Suorita Cron Job 30 sekunnin välein Linuxissa

Suorita yllä oleva tehtävä luomalla kaksi merkintää crontabiin. Ensimmäinen työ suorittaa päivämääräkomennon minuutin välein (60 sekuntia), sitten toinen merkintä käyttää sleep-komentoa viivyttääkseen tietyn ajan (tässä tapauksessa 30 sekuntia) ja käynnistääkseen date-komento uudelleen.

Sinun on lisättävä seuraavat merkinnät crontabiin (cron-taulukko) ja avattava se muokkausta varten seuraavalla crontab-komennolla (-e lippu mahdollistaa muokkauksen):

crontab -e

Lisää tiedostoon seuraavat cron-merkinnät.

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

Jos nyt tarkistat /tmp/date.log-tiedoston sisällön, sinun pitäisi nähdä, että date-komento suoritetaan 30 sekunnin välein. Voimme käyttää cat-komentoa tarkastellaksesi tiedostoa ja tarkistamalla aikasarakkeen vahvistamiseksi seuraavasti:

cat /tmp/date.log

Voit myös seurata tiedoston päivittymistä reaaliajassa. Voit tehdä tämän käyttämällä häntäkomentoa -f-lipulla.

tail -f /tmp/date.log

Suorita Cron Job 10 sekunnin välein Linuxissa

Katsotaanpa lisää esimerkkejä. Tämä näyttää, kuinka cron-työ suoritetaan 10 sekunnin välein. Temppu on yksinkertaisesti leikkiä nukkumiskomennolla sekuntimäärällä:

* * * * * 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

Jälleen kerran, jos katsomme /tmp/date.log-tiedostoa, se tulisi päivittää 10 sekunnin välein yllä olevien crontab-merkintöjen perusteella:

tail -f  /tmp/date.log

Tässä on toinen esimerkki date-komennon suorittamisesta joka 15 sekunnin välein:

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

Lopuksi voit suorittaa cron-työn 20 sekunnin välein käyttämällä jotain tällaista:

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

Tässä on myös lisää artikkeleita, joiden avulla voit oppia työaikataulusta cronin avulla:

  • Kuinka luoda ja hallita Cron-töitä Linuxissa
  • Cron vs Anacron: Työpaikkojen ajoittaminen Anacronilla Linuxissa

Nyt tiedät sen! Olemme näyttäneet sinulle erilaisia esimerkkejä cron-työn suorittamisesta joka x sekunti Linuxissa. Lue cron man -sivut (suorittamalla man cron ja man crontab komennot) saadaksesi lisätietoja.

Jos tiedät hyödyllisiä cron-komentovinkkejä tai temppuja, jaa ne alla olevissa kommenteissa.