ftp uzerinden dosya...
 
Bildirimler
Hepsini Temizle

ftp uzerinden dosya uzantilarini dikkate almayan senkronizasyon scripti...  

  RSS
Muhammed Gurler
(@MuhammedGurler)
Üye

Merhabalar.. 

Freebsd de calisacak ftp uzerinden dosya gonderecek seknronize scriptine ihtiyacim var..  Soyle A dizinindeki dosyalari B dizinine  tasiyacak eger B dizinin de ayni isimde dosya varsa atlayacak. Buraya kadar rsync ile yapilabiliyor. yapamadigim kisim, karsilikli kontrolu yaparken dosya uzantilarini dikkate almayacak. sadece isimlerini kontrol edecek. Mesela; A dizininde   abc.mov, acd.mp4, sdf.flv dosyalari B de  abc.flv, sdf.mp4 dosyalari olsun. Script calistiginda A dizinideki dosyalardan abc.mov ve sdf.flv dosyalirini B dizininde ayni ismde abc.flv ve sdf.mp4 isim karsiliklari oldugu icin atlayip sadece acd.mp4 u kopyalamali. Bu senkronizasyonu nasil yapabilirim.

 Tesekkurler... 

Alıntı
Gönderildi : 10/09/2013 19:21
Gokhan MANKARA
(@GokhanMANKARA)
Üye

Merhaba,

Python ile ufak bir script yazdım. Dosya kontrolü ve, yükleme işlemini ftp protokolü üzerinden gerçekleştiriyor.

Scriptte A dizini dediğiniz local dosya dizini, B dizini dediğiniz ftp üzerinden kontrol edilecek dizini gösteriyor. Ayrıca bağlanılacak ftp bilgilerini düzenlemelisiniz.

Belirttiğiniz senaryoya göre denediğimde, script düzgün şekilde çalışıyor. Umarım işinize yarar. Test edip bilgi verirseniz sevinirim.

Script :  http://gokhanmankara.com/files/python/ftp_check.py

Not: Çalışan sistem üzerinde kullanmadan önce, test ortamında emin olduktan sonra, çalışan sistem üzerinde deneyin. FTP üzerindeki dizini kontrol ettiği için, dosya olmaması durumunda hata verecektir.

CevapAlıntı
Gönderildi : 13/09/2013 01:52
Muhammed Gurler
(@MuhammedGurler)
Üye

Merhaba,

 Ilginiz icin tesekkurler..

 Scripti freebsd de calistiramadim, mac te calistirdim. mac ile denedim ilk bir kac denemede guzel calisti. daha sonra ne olduysa tum dosyalari bastan gondermeye basladi. karsi tarafta dosyalari silip tekrar gonderiyor. farki bir makinada farkli bir ftp ile denedim yine ayni sekilde dosyalari yeniden gonderdi.

 frebsd de ise su hatayi veriyor.

Traceback (most recent call last):

  File "/ftp_check.py", line 18, in <module>

    a, b = i.split('.')

ValueError: too many values to unpack 

 

CevapAlıntı
Gönderildi : 15/09/2013 04:09
Gokhan MANKARA
(@GokhanMANKARA)
Üye

Bu hatayı benim testlerimde A dizininde klasör var ise veriyor idi, senaryonuza göre iki dizinde de klasör olmaması gerekiyor.

Dosya silme yerine üzerine mi yazıyor? Sonucta dosya sil şeklinde bir parametre yok. Yapınızı tam olarak bilmediğimden yorum yapmak zor. 

CevapAlıntı
Gönderildi : 15/09/2013 05:10
Muhammed Gurler
(@MuhammedGurler)
Üye

A dizininde klasor yok. silip yeniden yaziyordan kastim uzerine yaziyor, uzantilarina bakmiyor hesini gonderiyor.

CevapAlıntı
Gönderildi : 15/09/2013 06:15
Gokhan MANKARA
(@GokhanMANKARA)
Üye

Dediğim gibi, düzgün çalışıp bir müddet sonra dediğiniz şekilde dosyaları tekrar yüklemesinin sebebini, gerçek ortamda kullandığınız yapıyı tam olarak bilmeden yorum yapmam zor. Sonuçta test ortamı 10 dosyadan oluşan bir yapı. Sizin kullandığınız gerçek ortamı bilmek gerekiyor.  Size PM gönderdim, bakabilirseniz sevinirim.

CevapAlıntı
Gönderildi : 15/09/2013 16:58
Ertan ERBEK
(@ertanerbek)
Tecrübeli Üye

[quote user="Muhammed Gurler"]

Merhabalar.. 

Freebsd de calisacak ftp uzerinden dosya gonderecek seknronize scriptine ihtiyacim var..  Soyle A dizinindeki dosyalari B dizinine  tasiyacak eger B dizinin de ayni isimde dosya varsa atlayacak. Buraya kadar rsync ile yapilabiliyor. yapamadigim kisim, karsilikli kontrolu yaparken dosya uzantilarini dikkate almayacak. sadece isimlerini kontrol edecek. Mesela; A dizininde   abc.mov, acd.mp4, sdf.flv dosyalari B de  abc.flv, sdf.mp4 dosyalari olsun. Script calistiginda A dizinideki dosyalardan abc.mov ve sdf.flv dosyalirini B dizininde ayni ismde abc.flv ve sdf.mp4 isim karsiliklari oldugu icin atlayip sadece acd.mp4 u kopyalamali. Bu senkronizasyonu nasil yapabilirim.

 Tesekkurler... 

[/quote]

 

Bu dediğinizi rsync yapıyor zaten neden onla devam etmiyorsunuz ?

CevapAlıntı
Gönderildi : 30/09/2013 20:30
Muhammed Gurler
(@MuhammedGurler)
Üye

rsync ile yapmaya calistim ama yapamdim. Rsync'e kaynak ve hedef karsilastirmasini yaparken dosya uzantilarini dikkate alma secenegini nasil tanimlayabilirim... hedefte 'abc.mov' dosyasi varsa, kaynaktaki 'abc.flv' dosyasini atla nasil diyebilirim.

CevapAlıntı
Gönderildi : 06/10/2013 03:03
Paylaş: