Nola exekutatu Cron lana 10, 20 eta 30 segundotan behin Linux-en
Laburra: Cron lan-planifikatzaileak ez du onartzen segundoko tarte batean exekutatzeko lanak antolatzea. Artikulu honetan, trikimailu sinple bat erakutsiko dizugu Linux-en 30 segundo edo x segundoko cron lan bat exekutatzen laguntzeko.
Berria al zara cron lan-antolatzailean eta 30 segundoro lan bat exekutatu nahi duzu? Zoritxarrez, cron-ek ez du onartzen. Ezin duzu programatu cron lan bat x segundoro exekutatzeko. Cron-ek gutxienez 60 segundoko denbora tartea onartzen du (hau da, minutu 1). Cron lan bat 30 segundoro exekutatzeko, behean azaldu dugun trikimailua erabili behar duzu.
Gida honetan, lan edo komando bat edo x segundoro script-a exekutatzeko beste adibide asko ere landuko ditugu. Baina has gaitezen Linux-en 30 segundoz behin cron lana nola exekutatu azaltzen.
Exekutatu Cron lana 30 segundoz behin Linux-en
Goiko zeregina lortzeko, sortu bi sarrera crontab-en. Lehenengo lanak minuturo (60 segundo) data komandoa exekutatuko du, ondoren bigarren sarrerak loaren komandoa erabiltzen du denbora zehatz batean atzeratzeko (30 segundo kasu honetan) eta data komandoa berriro deitzeko.
Sarrera hauek gehitu behar dituzu crontab-an (cron taula), eta editatzeko ireki behar duzu crontab komando hau erabiliz (-e banderak editatzeko aukera ematen du):
# crontab -e
Gehitu ondorengo cron sarrerak fitxategira.
* * * * * date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log

Orain /tmp/date.log fitxategiaren edukia egiaztatzen baduzu, data komandoa 30 segundoro exekutatzen dela ikusi beharko zenuke. Cat komandoa erabil dezakegu fitxategia ikusteko eta denbora zutabea egiaztatzeko, honela:
$ cat /tmp/date.log

Fitxategia denbora errealean eguneratzen dela ere ikus dezakezu. Horretarako, erabili -f bandera duen buztana komandoa.
$ tail -f /tmp/date.log

Exekutatu Cron Job 10 segundoz behin Linux-en
Ikus ditzagun adibide gehiago. Honek 10 segundoro cron lan bat nola exekutatu erakusten du. Trikimailua loaren komandoaren segundoko kopuruarekin jolastea da:
* * * * * 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
Berriro ere /tmp/date.log fitxategia ikusten badugu, 10 segundoz behin eguneratu beharko litzateke goiko crontab sarreretan oinarrituta:
$ tail -f /tmp/date.log
Hona hemen data komandoa 15 segundoro exekutatzeko beste adibide bat:
* * * * * date>> /tmp/date.log
* * * * * sleep 15; date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log
* * * * * sleep 45; date>> /tmp/date.log
Azkenik, 20 segundoz behin cron lan bat exekutatzeko, honelako zerbait izan dezakezu:
* * * * * date>> /tmp/date.log
* * * * * sleep 20; date>> /tmp/date.log
* * * * * sleep 40; date>> /tmp/date.log
Gainera, hona hemen artikulu gehiago cron erabiliz lan-programazioa ikasteko:
- Nola sortu eta kudeatu Cron lanak Linux-en
- Cron vs Anacron: nola programatu lanak Anacron erabiliz Linux-en
Orain badakizu! Linuxen x segundo bakoitzean cron lan bat exekutatzeko adibide desberdinak erakutsi dizkizugu. Irakurri cron man orriak (man cron eta man crontab komandoak exekutatuz) informazio gehiago lortzeko.
Cron komandoen aholku edo trikimailu erabilgarria ezagutzen baduzu, partekatu beheko iruzkinetan.