Kako zagnati PHP Script kot običajni uporabnik s Cron


Cron je zmogljiv pripomoček za časovno razporejanje delovnih mest v Unixu podobnih operacijskih sistemih, vključno z Linuxom. Deluje kot demon in se lahko uporablja za razporejanje opravil, kot so ukazi ali skripti lupine, za izvajanje varnostnih kopij, načrtovanje posodobitev in še veliko več, ki se občasno in samodejno izvajajo v ozadju ob določenih urah, datumih ali intervalih.

Ena od omejitev crona je, da predpostavlja, da bo sistem deloval večno; zato je primeren za strežnike, ki niso namizni računalniki. Poleg tega lahko določite nalogo za določen ali poznejši čas z ukazoma 'at' ali 'batch': vendar se naloga zažene samo enkrat (ne ponovi se).

V tem članku bomo razložili, kako običajnemu sistemskemu uporabniku dovoliti zagon ali izvajanje PHP skripta prek cron načrtovalca opravil v Linuxu.

Opravila lahko načrtujete s programom crontab (CRON TABle). Vsak uporabnik ima lahko svojo datoteko crontab, sestavljeno iz šestih polj za opredelitev opravila:

  • Minuta-sprejema vrednosti med 0-59.
  • Ura-sprejema vrednosti med 0-23.
  • Dan v mesecu - shranjuje vrednosti med 1-31.
  • Mesec v letu-hrani vrednosti med 1. in 12. ali januarjem-decembrom, lahko uporabite prve tri črke imena vsakega meseca, to je januarja ali junija.
  • Dan v tednu - vsebuje vrednosti med 0-6 ali ned-soboto. Tu lahko uporabite tudi prve tri črke imena vsakega dne, tj. sonce ali sreda.
  • Ukaz - ukaz, ki ga je treba izvesti.

Če želite ustvariti ali urediti vnose v svoji datoteki crontab, vnesite:

$ crontab -e

Če si želite ogledati vse vnose crontab, vnesite ta ukaz (ki bo datoteko crontab preprosto natisnil na std izhod):

$ crontab -l

Če pa ste sistemski skrbnik in želite izvesti skript PHP kot drug uporabnik, ga morate razporediti v datoteki /etc /crontab ali datoteki crontab korenskega uporabnika, ki podpira dodatno datoteko za določitev uporabniškega imena:

$ sudo vi /etc/crontab

In določite, da se bo PHP skript izvedel tako, za časovnim odsekom določite uporabniško ime.

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

Zgornji vnos izvrši skript /var/www/test_site/cronjobs/backup.php vsak dan ob polnoči kot uporabnik tecmint.

Če želite samodejno izvesti zgornji skript vsakih deset minut, dodajte naslednji vnos v datoteko crontab.

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

V zgornjem primeru */10 * * * * predstavlja, kdaj naj bi se opravilo zgodilo. Prva slika prikazuje minute - v tem primeru vsako \"deset \" minut. Ostale številke prikazujejo uro, dan, mesec in dan v tednu.

Morda boste radi prebrali tudi te naslednje povezane članke.

  1. Uporaba skripta za lupine za avtomatizacijo nalog vzdrževanja sistema Linux
  2. 12 Uporabna uporaba ukazne vrstice PHP, ki jo mora poznati vsak uporabnik Linuxa
  3. Kako zagnati kode PHP v terminalu Linux
  4. 30 uporabnih ukazov za sistemske skrbnike Linuxa

To je vse! Upamo, da vam je ta članek koristen. Če imate kakršna koli vprašanja ali dodatne ideje glede te teme, uporabite spodnji obrazec za komentar.