PDA

Tam Sürümünü Görmek İçin : dosya


blackman
08/11/2004, 22:11
#!/usr/bin/python

def dosyaYaz(metin,mod='rw'):
d=open("/root/Desktop/httpd.conf",mod)
d.write(metin)
d.close()


satir=1
dosya=open("/etc/httpd/conf/httpd.conf")
while satir:
satir=dosya.readline()
dosyaYaz(satir)

***kod bu ama calısmıyor yapmak istediğim bir dosyadaki değeri başak bir dosyaya yazmak.bole olabılır dıy edusundum ama olmadı "IOError: [Errno 9] Bad file descriptor" hatası verıyor.Birde sormak istediğim satir'in türü ne burda string mi .pythonda bi yerlere bişiler yazmak kolay am bu yazılanlar değişken olunca işler sarpa sarıyor.hiç tecrübem yok sadece tahmini seylerle solemı olur bolemı olur dıye denıyom.bu ıs nasıl olacak acep?

***aslında yapmak istediğim apacheye basit bir arayuz yazmak bunuda sole tasarladım.pythona hakım olamadıgım ıcın bıldıklerımle yola cıktım (cok uzattım sanırım :) )
solekı once httpd.conf dosyasının adını httpd.conf yapacam.bu dosyadakı #'li olmayan satırları ve benım degerını degıstırmeyecegım degerleri httpd.conf olarak olusturdugum bır dosyaya yazacagım.daha sonra degıstırılmeısnı ıstedıgım degerlerı sozluk yapısı ıle degıstırrıp httpd.conf dosyasına yazacagım.farklı gorusler varsa sevınırım daha bılmedıgım cok sey var su pythonda

herkese iyi çalışmalar tesekurler


fgenc
10/11/2004, 16:27
#!/usr/bin/python

def dosyaYaz(metin,mod='rw'):

#hic bir dosyayi hem okunur hemde yazilir acma bu hos degil
#

d=open("/root/Desktop/httpd.conf",mod)
d.write(metin)
d.close()


satir=1
dosya=open("/etc/httpd/conf/httpd.conf")
while satir:
satir=dosya.readline()
dosyaYaz(satir)


neden bir funksiyon olusturak istedigini anlamadim

dosya=open("/etc/httpd/conf/httpd.conf")
hepsi= dosya.readlines()
d=open("/root/Desktop/httpd.conf",w)
d.write(hepsi)
d.close()

seklinde yaparsan olmasilazim

fgenc
10/11/2004, 16:49
#!/usr/bin/python
import string
def dosyaYaz(metin):
d=open("dene2",'w')
d.write(metin)
d.close()


satir=""
dosya=open("dene.py")
satir=dosya.readlines()

dosyaYaz(string.join(satir))


bak öyle olmaliydi
umarim isini görür
aslinda ayni isi linux shellde cp ile de yapabilirdin

blackman
22/11/2004, 18:18
asıl istediğim dosya içinden bir kelime bulup bunun yerine yenisi yazmak.sizce?

nameless
22/11/2004, 18:58
replace()

fuksiyonunu kullan
ben yazmiyim sen bir deneme yap
takilirsan buraya atarsin kodu

bu yaziyi kara_lahana yazdi ;)