• 20-12-2006, 11:21:35
    #1
    Kurumsal PLUS
    Nasıl cron yapılır bilmeyen arkadaşlarımıza şimdi bunu anlatayım hazır boş zamanım varken mesela linux da bir komut yada bir dosyanın belirli zamanlarda çalışmasını istiyorsunuz...

    crontab -e

    yazınca basit cron sayfası çıkar karşınıza "* * * *" şeklinde kümeler çıkar bu yıldızların anlamları her dir mesela her cuma günü her saat her dakka gibi bunların yerlerine yerleştirilmesi aynı şu şekildedir

    Dakika Saat Gün Ay Hafta

    mesela

    1 * * * *

    olursa her dakkada bir anlamına gelmekte

    burada mesela ilk 3 dışında bir önemli birşey var ay ve haftalar

    aylar ocak şubat mart diye gider mesela

    * * * * 7

    bu her pazar anlamına gelir

    * * * 1 *

    buda her yıl ocak ayında

    0 Pazar
    1 Pazartesi
    2 Salı
    3 Çarşamba
    4 Perşembe
    5 Cuma
    6 Cumartesi
    7 Pazar

    bu rakamları haftalarda kullanabilirsiniz aylar içinde o ayın tarihdeki rakamını yazarsınız süper cümle oldu mesela aralık 12 olur

    bazen yani gerek duyuldugunda

    */1 * * * *

    cron karşılıklarını /1 gibi belirtiriz

    bir örnek daha yapalım mesela

    */0 */3 * * *

    ne oldu bu mesela her gece 3 de istenilen şey çalışsın dedik

    gerçek bir örnek yapalım daha önce kendi kodunuzu kendiniz yapın demiş bir başlık açmıştım onunla bunu karıştıralım mesela

    cd /usr/bin
    nano yedeklebeni

    diye bi dosya oluşturduk içine

    #/usr/bin/!
    cd /home/osman/yedekler
    zip -r dosya.zip ../public_html
    zip -r mysqller.zip /usr/lib/mysql/osman_*

    yazıyor ve kaydediyoruz

    sonra

    chmod +x yedeklebeni

    yazıyoruz

    crontab -e yazıyor ve altına alttakini ekliyoruz

    45 * * * * root yedeklebeni

    böylece her 45 dk da bir osman adlı kullanıcının dosyalarını yedeklemiş oluyoruz hatta biraz daha geliştirip şey yapabiliriz hmm örnek gmail hesabımıza mail olarak gönderebiliriz her 45 dk da 8)

    unutmadan

    * * * * * bunlardan sonra kullanıcı adı ve sonra çalıştırılacak dosya ve komut yazılır
  • 20-12-2006, 14:44:23
    #2
    saol ısımıze tarayacak bunu arıyordum
  • 26-04-2008, 20:54:50
    #3
    Kurumsal PLUS
    php dosyaları için

    php -q

    parametresini kullanınız.

    örnek yapmak gerekirse

    45 * * * * php -q /home/osman/public_html/cron.php
  • 23-03-2010, 09:02:35
    #4
    Gerçekten çok teşekkürler. Fazlasıyla işime yaradı.

    Bilmeyenlerde öğrensin diye konuyu yukarı almak istedim
  • 23-03-2010, 09:04:36
    #5
    Ni-Osman adlı üyeden alıntı: mesajı görüntüle
    php dosyaları için

    php -q

    parametresini kullanınız.

    örnek yapmak gerekirse

    45 * * * * php -q /home/osman/public_html/cron.php
    Mesela burda 45 DK'da bir çalışmaıs için yapmışsınız. Cron bu php dosyasını çalıştırıp görevini daha sonra sonlandırıyor mu?
  • 23-03-2010, 12:40:18
    #6
    teşekkürler işime yaradı...
  • 23-03-2010, 13:12:33
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    slaytube adlı üyeden alıntı: mesajı görüntüle
    Mesela burda 45 DK'da bir çalışmaıs için yapmışsınız. Cron bu php dosyasını çalıştırıp görevini daha sonra sonlandırıyor mu?
    45 * * * * php -q /home/osman/public_html/cron.php

    evet her 45dk da bir cron.php dosyasını calıstırmaktadır.
  • 23-03-2010, 22:14:34
    #8
    Peki cronda herhangi bi işleme başladığında bana da mail atmasını istesem. Nasıl olur?
  • 23-03-2010, 23:00:38
    #9
    Osman abi, ana klasördeki core dosyalarını
    0  	*  	*  	*  	*  	 rm -f /public_html/core.*
    komutu ile silebiliyorum, fakat alt klasörler için
    0  	*  	*  	*  	*  	 rm -f /public_html/*/core.*
    denedim olmadı, doğrusu nedir?