crontab(5) crontab(5)
crontab - cron'u yneten tablolar
Bir crontab dosyasnda, cron(8) srecinin hangi zamanda hangi komutu
altracan belirten aklamalar bulunur. Her kullanc kendi crontab dosyasna
sahip olabilir. Bu kullanclara ait crontab dosyalarndaki zamanlanm
komutlar, crontab dosyasnn sahibi hangi kullanc ise onun ad altnda
altrlr. Uucp ve News genellikle kendi crontab dosyalarna sahiptirler,
bu sayede bir cron komutunun paras olarak su(1) komutunu altrma ihtiyac
ortadan kalkm olur.
Bo satrlar, sekmeler ve ara boluklar yok saylrlar. `#' karakteri ile
balayan satrlar yorum satrlardr. Dosyann iletilmesi srasnda sistem
tarafndan nemsenmezler. Unutmayn ki, cron komutlar ve yorumlar ayn
satrda olamazlar. Bir yorum satrnn devamnda, bir cron komutu yer
alyorsa, sistem burasn da yorum olarak kabul eder ve ileme sokmaz.
Ayn ekilde; yorumlar da, ortam deikeni ayarlar biiminde, ayn satrda yer
alamazlar.
Geerli bir crontab satr, ya ortam deikenidir, ya da bir cron komutudur.
Bir ortam deikeni u ekilde olur:
isim = deer
Eit iaretinin yanndaki boluklar seime baldr. Deer iindeki sonraki
boluklar, isme atanan deerin bir paras olarak kabul edileceklerdir.
Deer dizgesi, nde veya arkada yer alan boluklar korumak iin, ift ya da
tek trnak iinde olabilir. Buradaki temel nokta ift trnak ile balarsanz
ift trnak ile bitirmeniz gerektiidir. Ayn ekilde tek trnak ile
balarsanz tek trnak ile bitirmelisiniz.
Pek ok ortam deikeni, cron(8) sreci tarafndan dzenlenir. SHELL deikeni,
/bin/sh' iaret eder. LOGNAME ve HOME, crontab dosyasnn sahibinin
/etc/passwd dosyasndaki deerlerine gre ayarlanr. HOME ve SHELL ortam
deikenleri, crontab iindeki ayrca belirtilerek nemsenmeyebilir ama
LOGNAME nemsenir.
UYARI: BSD sistemlerde, LOGNAME deikeni bazen USER olarak
adlandrlabilir. Bu tr sistemlerde, USER deikeni de ayarlanmaldr.
LOGNAME, HOME ve SHELL'e ek olarak; cron(8), bu crontab dosyasndaki
komutlarn almas sonucu e-posta gndermeyi gerektirecek bir durum ortaya
kmsa, MAILTO deikenini de arar. ayet MAILTO tanml ve ierii bo deil
ise, posta burada belirtilen kullancya gnderilir. ayet MAILTO
belirtilmi ama ierii bo ise, (MAILTO="" gibi) e-posta gnderilmez. Dier
durumlarda, e-posta, crontab dosyasnn sahibi olan kullancya gnderilir.
Bu seenek, cron'u yklerken postac olarak /usr/lib/sendmail yerine
/bin/mail kullanmaya karar verdiiniz durumlarda olduka faydal olur --
/bin/mail sahte isme izin vermez ve UUCP genellikle onun e-postalarn
okumaz.
Bir cron komutunun yaps V7 standart ile olduka uyumludur. Her satr,
sonunda bir komut olan, be adet zaman ve tarih alanna sahiptir. ayet
bu bir sistem crontab dosyas ise kullanc ad da belirtilir. Komutlar
cron(8) tarafndan iletilir. Burada belirtilen bir komutun iletilmesi
iin: dakika, saat ve ay blmnn gerek zaman ile ayn olmas ve haftann gn
ya da ayn gn blmnnden en az birisinin gerek zaman ile ayn olmas gerekir
(aklama iin aadaki NOT'a baknz). Burada unutulmamas gereken bir nokta
vardr: kayp saatler diye adlandrabileceimiz zaman (yaz saati, k saati
uygulamalarnda geilerde yaanan saat kayb gibi) iin ayarlanm grevler
asla almayacaktr. Benzer ekilde, bir seferden daha fazla yaanan saatler
iin ayarlanm grevlerde iki kez altrlacaktr (yaz saati k saati
deiimlerinde saatin geriye alnp, iki kere ayn saat diliminin yaanmas).
cron(8), her dakika ba cron girilerini gzden geirir.
Zaman ve tarih alanlar:
Alan ad izin verilen deerler
-------- ---------------------
minute 0-59 (dakika)
hour 0-23 (saat)
day of month 1-31 (ayn gn)
month 1-12 (veya ay isimleri)
day of week 0-7 (Pazar gn iin 0, 7; isim kullanlabilir.)
Yldz (*) ile iaretlenmi bir alan batan sona (=hepsi) anlamna gelir.
Say aralklar belirtilebilir. Aralklar, `-' iareti ile ayrlm iki saydan
oluur. Belirtilen bir arala balang ve biti saylar da dahildir. rnein;
8-11 saat aral: 8,9,10 ve 11 saatlerini kapsar.
Listeler kullanlabilir. Liste; virgl ile ayrlm saylar dizesidir. rnein:
``1,2,5,9'' ve ``0-4,8-12''.
Adm deerleri aralklarla birlikte kullanlabilir. Bir aralktan sonra
`/<say>' eklinde ifade edilir. Buradaki say admlama deeridir. rnein;
"0-23/2" saat ifadesi, V7 standartnda "0,2,4,6,8,10,12,14,16,18,20,22"
deerlerini ifade etmektedir. Admlama bir yldzdan `*'sonra da
yaplabilir. "*/2" nin anlam; her iki saatte bir demektir.
"month" ve "day of week" alan adlar iin isimler de kullanlabilir.
Byk/kk harf ayrm olmakszn ingilizce ismin ilk harfini
kullanabilirsiniz. sim aralklar ve isim listelerini kullanamazsnz.
6. alan (satrn geri kalan ksm) altrlacak komutu belirtir. Satrsonu
karakterine veya "%" iaretine kadar olan ksm, /bin/sh ya da crontab'n
SHELL ortam deikenince tanmlanm olan kabuk tarafndan altrlr. Yzde
iareti `%', `\' iareti ile ncelenmedike, satrsonu karakteri haline dnr
ve ilk `%' den sonraki tm bilgi, standart girdiye komut olarak
gnderilir.
Not - komutun altrlaca gn iki alandan ayarlanabilir: ayn gn ve haftann
gn. Her iki alanda belirli bir gn ile snrlysa (yani `*' deilse, yani
belirtilmi bir gn varsa), gerek zaman bu iki deerden biri ile eleince,
komut altrlr. rnein; ``30 4 1,15 * 5'' dizgesi bir komutu her ayn 1.
ve 15. gnleri saat 4:30'da, art her Cuma altrlr.
# komutlar altrmak iin /bin/sh kullanlsn,
# /etc/passwd'de belirtilen nemsizdir
SHELL=/bin/sh
# kimin crontab' olduunu bover, btn ktlar `paul'e postala
MAILTO=paul
#
# hergn gece yarsndan sonra be dakika altr
5 0 * * * $HOME/bin/daily.job >> $HOME/tmp/out 2>&1
# her ayn ilk gn saat 14:15 de altr -- ktlar paul'e postalansn
15 14 1 * * $HOME/bin/monthly
# hafta ii (Pazartesi-Cuma) hergn saat 22:00'da altr ve Joe'yu kzdr
0 22 * * 1-5 mail -s "Saat 22:00" joe%Joe,%%ocuklarn nerede?%
23 0-23/2 * * * echo "her gn 00:23, 02:23, 04:23 de alr"
5 4 * * sun echo "her Pazar 4:05'de alr"
/etc/crontab Sistem crontab dosyas
cron(8), crontab(1).
Haftann gnlerini belirtirken; hem 0. gn, hem de 7. gn Pazar olarak
kabul edilecektir. BSD ve ATT bu konuda anlaamamlar gibi grnyor.
Listeler ve aralklar ayn alan iinde birlikte olamazlar. "1-3,7-9"
dizgesi ATT veya BSD cron'u tarafndan reddedilecektir. cron komutu, bu
dizge yerine "1-3" veya "7,8,9" eklinde tanmlamalar kabul edecektir.
Aralklar admlama ierebilir. "1-9/2" , "1,3,5,7,9" ile ayn anlamdadr.
Ay ve haftann gnleri isim olarak belirtilebilir.
Ortam deikenleri crontab iinden ayarlanabilir. BSD veya ATT'de alt
srelere aktarlan ortam, /etc/rc iindekilerden birisidir.
Komut kts; crontab'n sahibine postalanabilir (BSD bunu beceremez),
crontab'n sahibinden bakasna postalanabilir (SysV bunu beceremez) veya
bu zellik kapatlabilir ve kimseye posta gnderilmez (SysV bunu da
yapamaz).
Paul Vixie <paul (at) vix.com> tarafndan yazlmtr.
Yaln Koluksa <yalcink01 (at) yahoo.com>, Kasm 2003
4. Berkeley Datm 24 Ocak 1994 crontab(5)
- Chris