Stranice: [1]   Idi dole
  Štampaj  
Autor Tema: Crontab i PHP  (Pročitano 2010 puta)
coyote
Gost
« poslato: Subota, 01. Septembar 2001. 02:10:00 »

Trebam da stavim jednu PHP skriptu da radi u cron-u. Ta skripta treba da me obavesti ako ne uspe da izvrsi neki od zadataka. Gde ce izvestaji o greskama da se ispisu? Ima li neki poseban fajl gde ce to da se smesta? Da li moze, i kako da se u okviru cron-a definise da izlaz ide na STDERR i kako naterati da PHP pise na STDERR?

P.S. Zbog ovako glupih pitanja sigurno zakljucujete da dolazim iz Win okruzenja L:)
Sačuvana
acim
Administrator
Elitni član
*****
Van mreže Van mreže

Poruke: 1.604



Pogledaj profil WWW
« Odgovor #1 poslato: Sreda, 05. Septembar 2001. 12:59:00 »

Potrebno je da kompajliras binarnu verziju PHP-a, dakle verziju bez Apache podrske. Nakon instalacije, u /usr/local/bin ce se jednostavno naci binarni fajl php. Onda lepo napises skript poput:

#!/usr/local/bin/php -q


Zatim skriptu setujes izvrsni bit "chmod u+x ime_skripta.php" i pokrenes ga sa "./ime_skripta.php" ili "/putanja/do/skripta/ime_skripta.php". Kada sve radi, lepo ubacis ovo u cron. Procitaj "man cron" i "man crontab".

Sto se tice koriscenja STDERR fajla, procitaj http://www.php.net/manual/en/function.fopen.php">ovaj tekst.
Sačuvana

Boban Aćimović, urednik linux.rs
amidar
Gost
« Odgovor #2 poslato: Petak, 19. Oktobar 2001. 11:54:00 »

Drugovi i Drugarice, bit ccu kratak,

Hmm, tebi je potrebno PHP reshenje, mada nije zgoreg da znash (ukoliko neznash wink ) i za ovo, prostije, reshenje. U crontab-u normalno definishesh kada cce se tvoj posao izvrshiti na sledecci nachin :

00 03 * * * root /bin/bash /bru/napravi_dnevni_backup

Dakle, svakog vrazhjeg dana u tachno 03:00 pokrene skript koji neshto odradi, a evo kako je unutar skripta resheno belezhenje poruka o toku izvrshavanja i obaveljenim ili ne obavljenim poslovima :

#
# Obezbedjivanje pristupa novell volumenima.
#

function zakachi_se_na_novell ()
{
        if . /mnt/novellm; then
                echo -n -e "    Uspeshno se zakachio na novell server ..." >> /log/backup.log
        else
                echo -n -e "    Nije mogao da se zakachi na novell server ..." >> /log/backup.log
        fi

        # Za sluchaj da nas interesuje kada se ovo zapravo zbiva ! (tj. kada se odigralo)

        #date +' ---- [%H:%M]' >> /log/backup.log

        echo -n -e "nn" >> /log/backup.log
}

Napomene :

*--- /log direktorijum je napravljen sa namerom da se tamo chuvaju log datoteke ovog tipa.

*--- -n -e iza echo su staviljeni da bi se eventualno vreme izvrshavanja funkcije prikazalo na kraju poruke a ne u novoj liniji. U novu liniju se ionako prelazi sa posebnim echo-om.

Dakle, prosta redirekcija u datoteku (sa dodavanjem na kraj iste).
Nadam se da ce ti ovaj primer malkice razjasniti neke stvari na ovu temu iako nije direktno vezan za PHP, ali je ujedno i znatno prostije izvesti ! :wink:Ja toliko !
Sačuvana
Stranice: [1]   Idi gore
  Štampaj  
 
Prebaci se na:  

?>