Crontab în Linux: EXEMPLE de programare a locurilor de muncă

Ce este crontab?

Cron este numit după cuvântul grecesc „Chronos” care este folosit pentru timp. Este un proces de sistem care va efectua automat sarcini conform programului specific. Este un set de comenzi care sunt utilizate pentru rularea sarcinilor obișnuite de programare. Crontab înseamnă „cron table”. Permite utilizarea programului de joburi, care este cunoscut sub numele de cron pentru a executa sarcini.

Crontab este, de asemenea, numele programului, care este folosit pentru a edita acel program. Este condus de un fișier crontab, un fișier de configurare care indică comenzile shell care trebuie rulate periodic pentru programul specific.

De ce să folosiți Cronjobs?

Iată motivele pentru care utilizați Cronjobs în Linux:

  • Ajută sistemul de operare să facă o copie de rezervă programată a fișierelor jurnal sau a bazei de date.
  • Ștergeți fișierele jurnal vechi
  • Archive și curățați tabelele bazei de date
  • Trimiteți orice e-mail de notificare, cum ar fi buletine informative, e-mail de expirare a parolei
  • Curățarea regulată a datelor din cache
  • Crontab este o opțiune ideală pentru automatizarea joburilor Unix.
  • Este folosit pentru a automatiza întreținerea sistemului

Cum se utilizează cron în Linux?

Sistemul Linux pachetul are un planificator de sarcini util numit crontab. Crontab este popular deoarece poate fi programat să ruleze un proces automat ca root. Prin urmare, a avea un proces automatizat care rulează ca root face schimbările de sistem mai ușoare. Trebuie doar să schimbați sarcina și apoi să așteptați până când sarcina este re-inițiată.

Formatul Linux Crontab

Crontab de Linux are șase câmpuri. Primele cinci câmpuri definesc ora și data execuției, iar al 6-lea câmp este folosit pentru executarea comenzii.

Sintaxa Crontab:

[Minute] [hour] 
[Day_of_the_Month] 
[Month_of_the_Year] 
[Day_of_the_Week] 
[command]

Formatul Linux Crontab

  • Astrics (*): Utilizați pentru potrivire
  • Definiți intervalul: Vă permite să definiți un interval cu ajutorul cratimei precum 1-10 sau 30-40 sau jan-mar, lun-wed.
  • Definiți mai multe intervale: Vă permite să definiți diferite intervale cu comenzi separate, cum ar fi apr-jun,oct-dec.

Cum să adăugați/modificați Crontab

Utilizatorul își poate edita joburile crontab cu ajutorul următoarei comenzi crontab:

$ crontab -u -e 

Comanda de mai sus va deschide configurația personală crontab a sistemului computerului dvs., care poate fi editată utilizând editorul dvs. de text implicit.

Nu este nevoie să reporniți crontab, deoarece va prelua modificările automat atunci când utilizați următoarea comandă.

$ crontab -l

Pentru a elimina sarcinile crontab, utilizați următoarea comandă.

$ crontab -r

Pentru a adăuga sau actualiza job în crontab, utilizați comanda de mai jos.

crontab -e

Comanda pentru a edita crontab-ul altui utilizator

crontab -u username -e

Cum să listați Crontab

Comanda pentru a vizualiza intrările crontab ale utilizatorului curent

crontab -l

Comandă pentru a vizualiza intrările crontab ale unui anumit utilizator:

crontab -u username -l

Exemple importante Crontab

Iată câteva exemple importante de Crontab

Descriere Comandă
Comanda Cron pentru a face diferitele joburi de programare.
Mai jos comanda dată, executați zilnic la 7:5 și la XNUMX:XNUMX.
0 7,17 * * * /scripts/script.sh
Comanda pentru a executa un cron la fiecare 5 minute.
*/5* * * * *  /scripts/script.sh
Comanda Cron Scheduler vă ajută să executați sarcina pe fiecare Monday la ora 5 AM. Această comandă este utilă pentru a efectua sarcini săptămânale, cum ar fi curățarea sistemului.
0 5 * * mon  /scripts/script.sh
Comanda rulează scriptul la interval de 3 minute.
*/3 * * * * /scripts/monitor.sh
Comanda pentru a programa un cron la care se execută pentru o anumită lună.
Această comandă pentru a rula sarcini rulează în lunile februarie, iunie și septembrie. Uneori trebuie să programăm o sarcină pentru a executa o sarcină lunară selectată.
* * * feb,jun,sep *  /script/script.sh
Comanda de executat în zilele selectate. Acest exemplu va rula fiecare Monday și miercuri la 5.
0 17 * * mon,wed  /script/script.sh
Această comandă permite cron să se execute în prima sâmbătă a fiecărei luni.
0 2 * * sat  [ $(date +%d) -le 06 ] && /script/script.sh
Comanda pentru a rula un script timp de 6 ore, astfel încât să poată fi configurat ca mai jos.
0 */6 * * * /scripts/script.sh
Această comandă programează o sarcină pentru a fi executată de două ori Monday și marți. Utilizați următoarele setări pentru a face acest lucru.
0 4,17 * * mon,tue /scripts/script.sh
Comandă programați un cron pentru a se executa după fiecare 15 secunde.
* * * * * /scripts/script.sh
* * * * *  sleep 15; /scripts/script.sh
Comanda pentru programarea sarcinilor anual.
@timetampul anual este= la „0 0 5 1 *”. Aceasta execută sarcina în al cincilea minut al fiecărui an. Îl puteți folosi pentru a trimite felicitări de Anul Nou.
@yearly /scripts/script.sh 
Sarcini de comandă de executat lunar.
@monthly timestamp este similar cu „0 0 1 * *”. Această expresie de comandă permite executarea unei sarcini în primul minut al lunii.
@monthly /scripts/script.sh
Comanda pentru a executa mai multe sarcini folosind un singur cron.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Comanda pentru a programa sarcini de executat săptămânal.
Marca temporală @weekly este similară cu „0 0 4 * soare”. Acesta este folosit pentru a efectua sarcini săptămânale, cum ar fi curățarea sistemului etc.
@weekly /bin/script.sh
Sarcina va fi programată să fie executată zilnic.
@daily timestamp este similar cu „0 2 * * *”. Ea execută sarcina în al doilea minut al fiecărei zile.
@daily /scripts/script.sh
Permite executarea sarcinilor la o oră.
Marca temporală @hourly este similară cu „0 * * * *”. Această comandă execută o sarcină în primul minut al fiecărei ore.
@hourly /scripts/script.sh
Permite executarea sarcinilor la repornirea sistemului.
Expresia @reboot este utilă pentru acele sarcini pe care sistemul dorește să le ruleze la pornirea sistemului. Acest lucru este util pentru a începe automat sarcinile de fundal.
@reboot /scripts/script.sh

Rezumat:

  • Cron este numit după cuvântul grecesc „Chronos” care este folosit pentru timp.
  • Cronjobs ajută sistemul de operare să facă o copie de rezervă programată a fișierelor jurnal sau a bazei de date.
  • Pachetul de sistem Linux are un programator de sarcini util numit crontab care poate fi programat pentru a rula un proces automat ca root.
  • Crontab de Linux are șase câmpuri. Primele cinci câmpuri definesc ora și data execuției, iar al 6-lea câmp este folosit pentru executarea comenzii.