Hvordan kjøre PHP-skript som vanlig bruker med Cron


Cron er et kraftig verktøy for tidsbasert planlegging av jobber i Unix-lignende operativsystemer inkludert Linux. Den kjører som en demon og kan brukes til å planlegge jobber som kommandoer eller shell-skript for å utføre sikkerhetskopier, planlegge oppdateringer pluss mange flere, som kjører periodisk og automatisk i bakgrunnen til bestemte tider, datoer eller intervaller.

En begrensning for cron er at den antar at et system vil kjøre for alltid; så det er egnet for andre servere enn stasjonære maskiner. I tillegg kan du planlegge en oppgave på gitt eller senere tidspunkt, ved å bruke "at" eller "batch"-kommandoene: men oppgaven kjøres bare én gang (den gjentas ikke).

Foreslått lesing: Slik planlegger du jobber ved å bruke Anacron på Linux

I denne artikkelen vil vi forklare hvordan du lar en normal systembruker kjøre eller kjøre et PHP-skript via en cron jobbplanlegger i Linux.

Du kan planlegge jobber ved å bruke programmet crontab (CRON TABle). Hver bruker kan ha sin egen crontab-fil som består av seks felt for å definere en jobb:

  • Minutt – godtar verdier mellom 0-59.
  • Time – godtar verdier mellom 0-23.
  • Dag i måneden – lagrer verdier mellom 1-31.
  • Årets måned – lagrer verdier mellom 1-12 eller jan-dese. Du kan bruke de tre første bokstavene i hver måneds navn, dvs. jan eller jun.
  • Ukedag – har verdier mellom 0-6 eller søn-lør. Her kan du også bruke de tre første bokstavene i hver dags navn, dvs. søn eller ons.
  • Kommando – kommando som skal utføres.

For å opprette eller redigere oppføringer i din egen crontab-fil, skriv inn:

crontab -e

Og for å se alle crontab-oppføringene dine, skriv inn denne kommandoen (som ganske enkelt vil skrive ut crontab-filen til std-utgang):

crontab -l

Men hvis du er systemadministrator og ønsker å kjøre et PHP-skript som en annen bruker, må du planlegge det i /etc/crontab-filen eller rotbrukerens crontab-fil som støtter en ekstra arkivert for spesifisering brukernavnet:

sudo vi /etc/crontab

Og planlegg at PHP-skriptet skal kjøres slik, spesifiser brukernavnet etter tidsdelen.

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

Oppføringen ovenfor kjører skriptet /var/www/test_site/cronjobs/backup.php hver dag ved midnatt som bruker tecmint.

Hvis du vil kjøre skriptet ovenfor automatisk hvert tiende minutt, legger du til følgende oppføring i crontab-filen.

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

I eksemplet ovenfor representerer */10 * * * * når jobben skal skje. Den første figuren viser minutter – i dette scenariet, hvert "ti" minutt. De øvrige tallene viser henholdsvis time, dag, måned og ukedag.

Du kan også like å lese disse følgende relaterte artiklene.

  1. Bruke Shell-skripting for å automatisere Linux-systemvedlikeholdsoppgaver
  2. 12 Nyttig PHP-kommandolinjebruk Enhver Linux-bruker må vite
  3. Hvordan kjøre PHP-koder i Linux Terminal
  4. 30 nyttige Linux-kommandoer for systemadministratorer

Det er alt! Vi håper du finner denne artikkelen nyttig. Hvis du har spørsmål eller ekstra ideer å dele angående dette emnet, bruk kommentarskjemaet nedenfor.