CRM i platforme podatakaMarketing alati

Razumijevanje i korištenje Cron-a: Sveobuhvatni vodič za planiranje poslova

cron, kratko za naredba pokreni na mreži, je moćan vremenski baziran raspored poslova u operativnim sistemima sličnim Unixu. Pojam Cron je igra riječi kronos or Chronos, koji u grčkoj mitologiji predstavlja vrijeme. Ime cron za vremenski baziran planer poslova odražava njegovu funkciju planiranja i izvršavanja zadataka u određeno vrijeme ili intervale, što ga čini prikladnom referencom na koncept vremena u mitologiji.

Cron vam omogućava da automatizujete zadatke koji se ponavljaju, izvršavate skripte u određenim intervalima i održavate efikasnost sistema. Ovaj sveobuhvatni vodič će vas provesti kroz sve što trebate znati o cron-u, od instalacije do upotrebe, ključnog rječnika i pravih uzoraka koda.

Sadržaj

  1. Šta je cron?
  2. Instaliranje Cron
  3. Osnovni pojmovi i terminologija
  4. Cron sintaksa
  5. Primjeri i slučajevi upotrebe
  6. Uobičajene zamke i najbolje prakse
  7. Dodatni cron resursi

Šta je Cron?

Cron je demon (pozadinski proces) koji radi na sistemima baziranim na Unixu, uključujući Linux i macOS. Njegova primarna svrha je automatsko izvršavanje zakazanih zadataka. Ovi zadaci mogu varirati od jednostavnih skripti do održavanja sistema i pravljenja rezervnih kopija.

Instaliranje Cron

U većini sistema sličnih Unixu, cron je unapred instaliran. Možete provjeriti njegovu dostupnost otvaranjem terminala i upisivanjem:

crontab -e

Ako ova komanda otvori uređivač cron tabele, imate instaliran cron. Ako nije, možete ga instalirati pomoću upravitelja paketa vašeg sistema. Na primjer, na Ubuntuu možete koristiti:

sudo apt-get install cron

Cron koncepti i terminologija

Prije nego što uđemo u upotrebu cron-a, razumijemo neke bitne koncepte i terminologiju:

Objašnjenje Cron dijagrama
  • crontab: Kratica za cron table, to je datoteka koja sadrži listu zakazanih zadataka za korisnika.
  • Cronjob: Jedan zadatak ili naredba zakazana za izvođenje u određeno vrijeme.
  • Fields: Svaki cronjob ima pet polja koja definiraju kada se posao izvodi:
    • Minuta (0-59)
    • Sat (0-23)
    • Dan u mjesecu (1-31)
    • Mjesec (1-12)
    • Dan u sedmici (0-7, gdje i 0 i 7 predstavljaju nedjelju)

Cron sintaksa

Razumijevanje sintakse unosa u crontab je ključno. Prati obrazac:

* * * * * command-to-be-executed

Evo objašnjenja s komentarima koje možete umetnuti u svoj cron posao:

# +---------------- minute (0 - 59)
# | +------------- hour (0 - 23)
# | | +---------- day of month (1 - 31)
# | | | +------- month (1 - 12)
# | | | | +---- day of week (0 - 6) (Sunday=0 or 7)
# | | | | |
* * * * * /var/www/html/myscript.php

Svaka zvjezdica (*) predstavlja polje u cron izrazu. Na primjer, da biste zakazali posao svaki dan u 3:30, koristili biste:

30 15 * * * command-to-be-executed

Cron primjeri i slučajevi upotrebe

Hajde da istražimo neke praktične primjere kako bismo ilustrirali korištenje cron-a:

  • Dnevno pokretanje skripte: Za izvršavanje skripte svaki dan u ponoć, možete koristiti:
0 0 * * * /path/to/script.sh
  • Pokretanje skripte svaki sat: Za zadatak po satu koristite:
0 * * * * /path/to/script.sh
  • Sedmična sigurnosna kopija: Za zakazivanje sedmične sigurnosne kopije nedjeljom u 2 ujutro, koristite:
0 2 * * 0 /path/to/backup-script.sh
  • Izvođenje zadatka u određenim mjesecima: Za pokretanje posla samo u januaru i julu u 8:30:
30 8 * 1,7 * /path/to/script.sh

Cron zamke i najbolje prakse

  • Varijable okoline: Osigurajte da vaši cron poslovi postavljaju potrebne varijable okruženja, jer cron poslovi ne nasljeđuju varijable okruženja vaše ljuske.
  • Dozvole: Budite sigurni da ste postavili dozvole za datoteku skripte kao izvršnu. Svaki put kada bih ponovo sačuvao svoju skriptu, otkrio bih da moje dozvole treba ponovo da se podese!
  • Varijable putanje: Navedite punu putanju do izvršnih datoteka i skripti unutar vaših cron poslova kako biste izbjegli probleme s relativnim stazama.
  • testiranje: Testirajte ih u sigurnom okruženju prije postavljanja kritičnih cron poslova kako biste bili sigurni da rade kako se očekuje.
  • Sindikat: Preusmjerite izlaz vaših cron poslova u datoteku dnevnika kako biste pratili njihovo izvršenje i sve potencijalne greške.
0 0 * * * /path/to/script.sh >> /path/to/cron.log 2>&1

Ovaj cron posao pokreće skriptu /path/to/script.sh svaki dan u ponoć, a izlaz (i stdout i stderr) generiran od strane skripte se dodaje u zapisnik

/path/to/cron.log. Ovo je uobičajena praksa za hvatanje i evidentiranje izlaza cron poslova u svrhu praćenja i rješavanja problema. Hajde da razložimo ovu specifičnu sintaksu cron posla:

  • *0 0 * * *: Ovaj dio definira raspored kada se cron posao treba pokrenuti. U ovom slučaju, planirano je da se pokreće svaki dan u ponoć (0 minuta nakon 0 sati).
  • /path/to/script.sh: Ovo je naredba ili skripta koja se izvršava kada se pokrene cron posao. Ovaj primjer prikazuje skriptu koja se nalazi na /path/to/script.sh.
  • >> /put/do/cron.log: Ovaj dio preusmjerava standardni izlaz (stdout) cron posla u datoteku dnevnika pod nazivom cron.log nalazi se na /path/to/. The >> operator dodaje izlaz u datoteku dnevnika, tako da ako datoteka ne postoji, biće kreirana, a ako već postoji, izlaz će biti dodan na kraj datoteke.
  • 2> & 1: Ovo se koristi za preusmjeravanje standardnog izlaza (stdout) i standardne greške (stderr) na istu datoteku dnevnika. The 2 predstavlja stderr, i 1 predstavlja stdout. dakle, 2>&1 znači da su i stdout i stderr preusmjereni na istu datoteku dnevnika navedenu ranije.

Cron je vrijedan alat za automatizaciju zadataka na sistemima baziranim na Unixu. Sa svojim fleksibilnim opcijama planiranja, može pojednostaviti administraciju sistema i poboljšati efikasnost. Razumevanjem njegove sintakse i praćenjem najboljih praksi, možete iskoristiti moć crona da efikasno automatizujete svoje rutinske zadatke.

Dodatni Cron resursi

Douglas Karr

Douglas Karr je CMO of OpenINSIGHTS i osnivač Martech Zone. Douglas je pomogao desetinama uspješnih MarTech startupova, pomogao je u dubinskom pregledu od preko 5 milijardi dolara u Martechovim akvizicijama i investicijama, te nastavlja da pomaže kompanijama u implementaciji i automatizaciji njihovih prodajnih i marketinških strategija. Douglas je međunarodno priznati stručnjak za digitalnu transformaciju i MarTech stručnjak i govornik. Douglas je također objavljeni autor Dummie's vodiča i knjige o poslovnom liderstvu.

Vezani članci

Nazad na vrh dugmeta
blizu

Adblock otkriven

Martech Zone je u mogućnosti da vam pruži ovaj sadržaj bez ikakvih troškova jer mi unovčavamo našu stranicu putem prihoda od oglasa, partnerskih veza i sponzorstava. Bili bismo zahvalni ako biste uklonili svoj blokator oglasa dok gledate našu web stranicu.