30-04-2012 14:04 tarihinde, Atıf CEYLAN yazdı:
> :) noktali virgul ve $ eklemek disinda pek fark olmadi goruldugu gibi.
Selamlar,
Zorlamayın beni Atıf Bey :) Neticede dil dildir... Aynı şeyi fortran ile 
de yapabilirsiniz. Bundan yana sıkıntı yok. Ama hani daha kolay gibi 
geliyor bana. Elbette ortada renk ve zevk arasındaki paradoks baki...

BU arada aşağıda Squirelmail kullanıcılarının takvimdeki hatırlatma 
kayıtlarını zamanı geldiğinde kullanıcıya e-posta atarak uyaran kod... 5 
dk'da bir çalıştırıyorsun oluyor :)

Elbette siz bunu şimdi php ile de yazarsınız muhakkak... :-P

#!/usr/bin/python
# -*- coding: utf8 -*-


# Bu program Squirrelmail Takvim eklentisini hatirlatici olarak
# kullanilmasi icin yazilmistir.



import string, os, codecs, fnmatch, time, random


def IslemYap(GelenDosya,Kime):
     global AnlikZaman
     #Kisisnin domain'i tespit ediliyor ve [email protected] olarak 
belirleniyor.
     Takas=Kime.split("@")
     Gonderen="HATIRLATICI@"+Takas[1]
     f=open(GelenDosya,"r")
     for line in f:
     Okunan=line
     Bilgi=Okunan.split("|")
     Tarih=Bilgi[0]
     TarihAy=Tarih[0:2]
     TarihGun=Tarih[2:4]
     TarihYil=Tarih[4:8]
     Saat=Bilgi[1]
     SaatSaat=Saat[0:2]
     SaatDakika=Saat[2:4]
     Sure=Bilgi[2]
     Durum=Bilgi[3]
     Baslik=Bilgi[4]
     Aciklama=Bilgi[5]
     #********************************
     t=(int(TarihYil), int(TarihAy), 
int(TarihGun),int(SaatSaat),int(SaatDakika),0,0,0,0)
     BaslangicZaman=time.mktime(t)
     BitisZaman=BaslangicZaman+(int(Sure)*60)

     if BaslangicZaman<=AnlikZaman and AnlikZaman<=BitisZaman:
         Sayac=str(random.random())
         Sayac=Sayac[-5:]
         # Mesajin olusturulacagi dizin... Bu dosya islem sonunda 
silinecek...
         HedefDosya="/root/GidenPosta"+ Sayac + ".txt"
         # Mesajin icerisi dolduruluyor...
         cmd ='echo To:'+ Kime + '>'+ HedefDosya
         os.system(cmd)
         cmd ='echo From:'+ Gonderen + ' >>'+ HedefDosya
         os.system(cmd)
         cmd ='echo Subject:'+ Baslik + " Konulu Hatirlatmaniz var!" + 
'>>'+ HedefDosya
         os.system(cmd)
         cmd ='echo Hatirlatma Tarihi: '+ TarihGun + "/" + TarihAy + "/" 
+ TarihYil  + '>>' + HedefDosya
         os.system(cmd)
         cmd ='echo Hatirlatma Zamani: '+ SaatSaat + ':' + SaatDakika + 
'>>'+ HedefDosya
         os.system(cmd)
         cmd ='echo Hatirlatma Suresi: '+ Sure + ' dakika >>'+ HedefDosya
         os.system(cmd)
         cmd ='echo 
----------------------------------------------------------- >>'+ HedefDosya
         os.system(cmd)
         cmd ='echo '+ Aciklama + '>>'+ HedefDosya
         os.system(cmd)
         cmd ='echo 
----------------------------------------------------------- >>'+ HedefDosya
         os.system(cmd)
         cmd ='echo Kaynak tarih kaydina git >>' + HedefDosya
         os.system(cmd)
         cmd ='echo Sirket icinden: 
http://192.168.0.153/webmail/plugins/calendar/day.php?year=' + TarihYil 
+ '\&month=' + TarihAy + '\&day=' + TarihGun + ' >>' + HedefDosya
         os.system(cmd)
         cmd ='echo Sirket disindan: 
http://85.105.YY.XX/webmail/plugins/calendar/day.php?year=' + TarihYil + 
'\&month=' + TarihAy + '\&day=' + TarihGun + ' >>' + HedefDosya
         os.system(cmd)
         cmd='cat ' + HedefDosya + ' |/var/qmail/bin/qmail-inject'
         os.system(cmd)
         cmd='rm -f ' + HedefDosya
         os.system(cmd)

     f.close()


def Basla():
     DizinAdi="/var/lib/squirrelmail/prefs"
     Yil =time.strftime("%Y",time.localtime())
     Kriter = "*." + Yil + ".cal"
     os.listdir(DizinAdi)
     dirname = DizinAdi
     os.listdir(dirname)
     #print glob.glob('/var/lib/squirrelmail/prefs' + '/*.2009.cal')
     #print [f for f in os.listdir(dirname)]
     #print [f for f in os.listdir(dirname) if 
os.path.isfile(os.path.join(dirname, f))]
     #print [f for f in os.listdir(dirname) if 
os.path.isdir(os.path.join(dirname, f))]
     #showerror("Hata",u"FiyatDetay okunamadi!")
     for file in os.listdir(DizinAdi):
     if fnmatch.fnmatch(file, Kriter):
         Kime=file[:-9]
             IslemYap(DizinAdi + '/' + file,Kime)


AnlikZaman = time.time()
#print AnlikZaman
AnlikDakika = int(time.strftime("%M",time.localtime()))
#print AnlikDakika

#Programin her 5 dakikada bir yani besin katlari olan dakikalarda 
calismasini sagliyor...
if AnlikDakika%5 == 0:
     Basla()


-- 
Kolay gelsin,
Mucip:)

_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap