“Cron” bilen adaty ulanyjy hökmünde PHP skriptini nädip işletmeli


“Cron”, “Linux” -y öz içine alýan “Unix” ýaly operasiýa ulgamlarynda işleriň wagtlaýyn meýilleşdirilmegi üçin güýçli peýdalydyr. Daemon görnüşinde işleýär we ätiýaçlyk nusgalaryny ýerine ýetirmek, buýruklary ýa-da gabyk skriptleri ýaly işleri meýilleşdirmek üçin ulanylýar, belli bir wagt, sene ýa-da wagt aralygynda yzygiderli we awtomatiki usulda işleýän fonda yzygiderli we awtomatiki usulda işleýär.

Kronyň bir çäklendirmesi, ulgamyň hemişelik işlejekdigini çaklamakdyr; şonuň üçin iş stoly maşynlaryndan başga serwerler üçin amatlydyr. Mundan başga-da, “at” ýa-da “partiýa” buýruklaryny ulanyp, berlen ýa-da soňraky bir meseläni düzüp bilersiňiz: ýöne bu mesele diňe bir gezek ýerine ýetirilýär (gaýtalanmaýar).

Bu makalada, adaty ulgam ulanyjysyna Linux-da kron iş meýilnamasy arkaly PHP skriptini işletmäge ýa-da ýerine ýetirmäge nädip rugsat bermelidigini düşündireris.

“Crontab” (CRON TABle) programmasyny ulanyp, iş tertibini düzüp bilersiňiz. Her bir ulanyjynyň işini kesgitlemek üçin alty meýdandan ybarat öz krontab faýly bolup biler:

  • Minute - 0-59 aralygyndaky bahalary kabul edýär.
  • Sagat - 0-23 aralygyndaky bahalary kabul edýär.
  • Aý güni - 1-31 aralygyndaky bahalary saklaýar.
  • ofylyň aýy - 1-12-nji ýanwar-dekabr aralygynda bahalary saklaýar, her aýyň adynyň ilkinji üç harpyny, ýagny Janan ýa-da Iýun ulanyp bilersiňiz.
  • Hepdäniň güni - 0-6 ýa-da Gün-Sat aralygynda bahalary saklaýar, Bu ýerde her günüň adynyň ilkinji üç harpyny, ýagny Gün ýa-da Çarşenbe ulanyp bilersiňiz.
  • Buýruk - ýerine ýetirilmeli buýruk.

“Crontab” faýlyňyzdaky ýazgylary döretmek ýa-da redaktirlemek üçin ýazyň:

$ crontab -e

“Crontab” ýazgylaryňyzyň hemmesini görmek üçin bu buýrugy ýazyň (bu diňe “crontab” faýlyny std çykyşyna çap eder):

$ crontab -l

Şeýle-de bolsa, ulgam dolandyryjysy bolsaňyz we PHP skriptini başga bir ulanyjy hökmünde ýerine ýetirmek isleseňiz, ony/etc/crontab faýlynda ýa-da ulanyjy adyny kesgitlemek üçin goşmaça berlen goldawy goldaýan kontab faýlynda tertipleşdirmeli:

$ sudo vi /etc/crontab

PHP skriptiňizi şeýle ýerine ýetirmegi meýilleşdiriň, wagt bölüminden soň ulanyjy adyny görkeziň.

0 0 * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php

Aboveokardaky ýazgy /var/www/test_site/cronjobs/backup.php skriptini her gün ýary gije ulanyjy teksti hökmünde ýerine ýetirýär.

Aboveokardaky skripti her on minutdan awtomatiki ýerine ýetirmek isleseňiz, crontab faýlyna aşakdaky ýazgyny goşuň.

*/10 * * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php

Aboveokardaky mysalda, */10 * * * * işiň haçan bolmalydygyny görkezýär. Birinji surat minutlary görkezýär - bu ssenariýada, her \on\ minutda. Beýleki sanlar degişlilikde hepdäniň sagadyny, gününi, aýyny we gününi görkezýär.

Şeýle hem şu aşakdaky degişli makalalary okap bilersiňiz.

  1. Linux ulgamyna hyzmat etmek meselelerini awtomatlaşdyrmak üçin Shell skriptini ulanmak
  2. 12 Peýdaly PHP buýruk ulanylyşy Her Linux ulanyjy bilmeli
  3. Linux Terminalynda PHP kodlaryny nädip işletmeli
  4. Ulgam dolandyryjylary üçin 30 peýdaly Linux buýruklary

Bu hemmesi! Bu makalany peýdaly görersiňiz diýip umyt edýäris. Bu mowzuk bilen baglanyşykly paýlaşjak soraglaryňyz ýa-da goşmaça pikirleriňiz bar bolsa, aşakdaky düşündiriş formuny ulanyň.