Reklama

Okresowe uruchamianie skryptu na stronie i cron

Erewhon, ndz., 19/04/2009 - 14:29
Kategorie:

Bardzo często można spotkać się na stronach www, sklepach internetowych, itp ze zautomatyzowanymi zadaniami, które muszą być wykonywane okresowo, np. raz na dzień.

Instrukcje zapisywane są często w pliku cron.php. Problem polega na tym, że należy tę stronę uruchamiać codziennie np. o godzinie 24:00, zrobi to za nas automat - cron dostępny w każdym systemie *nix.

Jeżeli na serwerze zainstalowana jest przeglądarka tekstowa Lynx, a chyba na każdym Linuksie ją znajdziemy to wywołanie skryptu cron.php może wyglądać tak:

/usr/bin/lynx -source http://www.example.com/cron.php > /dev/null 2>&1

Spowoduje to uruchomienie naszej strony i cron.php oraz zrzucenie wyniku działania do pliku, w tym wypadku do /dev/null czyli w nicość.

Teraz należy uruchomić wszystko z crona o określonej godzinie.

Wykonuje komendę w shellu:

crontab -e

co spowoduje uruchomienie domyślnego edytora i pliku odpowiedzialnego za cron na naszym koncie.

Wpisujemy odpowiedni czas wykonywania komend, wraz z komendą:

00 0 * * * /usr/bin/lynx -source http://www.example.com/cron.php > /dev/null 2>&1

Skrypt wykonywać się będzie codziennie o godzinie 24:00, zapisujemy zbiór.

Po zapisaniu powinniśmy otrzymać komunikat:

crontab: installing new crontab

co oznacza, że wszystko przebiegło pomyślnie.

Składnia Cron

źródło: Wikipedia

*     *     *     *     *  komenda do wykonania
-     -     -     -     -
|     |     |     |     |
|     |     |     |     +----- dzień tygodnia (0 - 6) (Niedziela=0)
|     |     |     |     
|     |     |     +------- miesiąc (1 - 12)
|     |     |     
|     |     +--------- dzień miesiąca (1 - 31)
|     |     
|     +----------- godzina (0 - 23)
|     
+------------- minuta (0 - 59)
Średnia: 2 (2 głosy/ów)

Odpowiedzi

Dodaj nową odpowiedź

Zawartość pola nie będzie udostępniana publicznie.
  • Adresy internetowe są automatycznie zamieniane w odnośniki, które można kliknąć.
  • Dozwolone znaczniki HTML: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <pre> <blockquote>
  • Znaki końca linii i akapitu dodawane są automatycznie.
CAPTCHA
To pytanie sprawdza czy jesteś człowiekiem, a aby zapobiec przed spamem.
Image CAPTCHA
Enter the characters shown in the image.