11 Eżempji tal-Kompitu tal-Iskedar Cron fil-Linux


F'dan l-artikolu, se nirrevedu u naraw kif nistgħu niskedaw u nħaddmu kompiti fl-isfond awtomatikament f'intervalli regolari billi tuża l-kmand Crontab.

It-trattament ta 'xogħol frekwenti manwalment huwa kompitu skoraġġanti għall-amministraturi tas-sistema u kompiti bħal dawn jistgħu jiġu skedati u jitħaddmu awtomatikament fl-isfond mingħajr ma jintervjeni l-bniedem bl-użu ta' cron daemon f'sistema operattiva Linux jew Unix-like.

[ Tista 'tħobb ukoll: Kif toħloq u timmaniġġja l-Impjiegi Cron fuq Linux ]

Pereżempju, tista' awtomat għodod onlajn biex tiġġenera impjiegi cron.

Cron iqum kull minuta u jiċċekkja l-kompiti tal-iskeda f'countable - Crontab (TABELLA CRON) hija tabella fejn nistgħu niskedaw tali tipi ta 'kompiti ripetuti.

Suġġerimenti: Kull utent jista' jkollu l-crontab tiegħu stess biex joħloq, jimmodifika u jħassar il-kompiti. B'mod awtomatiku cron huwa attivat għall-utenti, madankollu, nistgħu nirrestrinġu l-utenti billi nżidu dħul fil-fajl /etc/cron.deny.

Il-fajl Crontab jikkonsisti fi kmand għal kull linja u għandu sitt oqsma fil-fatt u separati jew minn spazju jew tab. Il-ħames oqsma tal-bidu jirrappreżentaw il-ħin biex imexxu l-kompiti u l-aħħar qasam huwa għall-kmand.

  • Minuta (żomm il-valuri bejn 0-59)
  • Siegħa (żomm il-valuri bejn 0-23)
  • Jum tax-Xahar (żomm il-valuri bejn 1-31)
  • Ix-xahar tas-sena (żomm il-valuri bejn 1-12 jew Jannar-Diċ, tista' tuża l-ewwel tliet ittri tal-isem ta' kull xahar jiġifieri Jan jew Ġunju)
  • Jum tal-ġimgħa (żomm il-valuri bejn 0-6 jew Sun-Sat, Hawnhekk ukoll tista' tuża l-ewwel tliet ittri tal-isem ta' kull jum jiġifieri Sun jew Wed. )
  • Kmand – Il-/path/to/kmand jew l-iskript li trid tiskeda.

Elenka jew immaniġġja l-kompitu bil-kmand tal-crontab bl-għażla -l għall-utent attwali.

# crontab -l

00 10 * * * /bin/ls >/ls.txt

Biex teditja l-entrata tal-crontab, uża -e l-għażla kif muri hawn taħt. Fl-eżempju hawn taħt se tiftaħ impjiegi skeda fl-editur VI. Agħmel il-bidliet meħtieġa u oqgħod tagħfas it-tasti :wq li jsalvaw is-setting awtomatikament.

# crontab -e

Biex telenka l-impjiegi skedati ta' utent partikolari msejjaħ tecmint billi tuża għażla bħala -u (Utent) u -l (Lista).

# crontab -u tecmint -l

no crontab for tecmint

Nota: L-utent root biss għandu privileġġi kompluti biex jara l-entrati tal-crontab ta 'utenti oħra. Utenti normali ma jistgħux jaraw lil ħaddieħor.

Attenzjoni: Crontab b'-r il-parametru se jneħħi xogħlijiet skedati kompluti mingħajr konferma minn crontab. Uża l-għażla -i qabel tħassar il-crontab tal-utent.

# crontab -r

crontab b'-i l-għażla tqanqlek konferma mill-utent qabel ma tħassar il-crontab tal-utent.

# crontab -i -r

crontab: really delete root's crontab?

  • Asterisk (*) – Qabbel il-valuri kollha fil-qasam jew kwalunkwe valur possibbli.
  • Sing(-) – Biex tiddefinixxi l-firxa.
  • Slash (/) – l-ewwel qasam /10 jiġifieri kull għaxar minuti jew inkrement tal-firxa.
  • Il-Vigola (,) – Biex tissepara l-oġġetti.

Amministratur tas-sistema jista 'juża direttorju cron predefinit kif muri hawn taħt.

  • /etc/cron.d
  • /etc/cron.daily
  • /etc/cron.hourly
  • /etc/cron.monthly
  • /etc/cron.weekly

L-impjiegi t'hawn taħt iħassru fajls vojta u direttorju minn /tmp f'12:30 am kuljum. Trid issemmi l-isem tal-utent biex twettaq il-kmand tal-crontab. Fl-eżempju hawn taħt, l-utent root qed iwettaq xogħol cron.

# crontab -e

30 0 * * *   root   find /tmp -type f -empty -delete

Jeħtieġ li tissostitwixxi ħames oqsma tal-kmand cron b'kliem ewlieni jekk trid tuża l-istess.

Fl-eżempju t'hawn taħt, kmand1 u kmand2 jaħdmu kuljum.

# crontab -e

@daily <command1> && <command2>

B'mod awtomatiku, cron jibgħat posta lill-kont tal-utent li jesegwixxi cronjob. Jekk trid tiddiżattivaha żid ix-xogħol cron tiegħek simili għall-eżempju ta 'hawn taħt. L-użu ta '>/dev/null 2>&1 għażla fl-aħħar tal-fajl se terġa' tindirizza l-output kollu tar-riżultati cron taħt /dev/null.

 crontab -e
* * * * * >/dev/null 2>&1

konklużjoni: L-awtomazzjoni tal-kompiti tista 'tgħinna nwettqu l-kompiti tagħna b'modi aħjar, mingħajr żbalji, u b'mod effiċjenti. Tista' tirreferi għal paġna manwali ta' crontab għal aktar informazzjoni billi ttajpja l-kmand 'man crontab' fit-terminal tiegħek.