Skip to content

Instantly share code, notes, and snippets.

@AliYmn
Created December 21, 2017 04:20
Show Gist options
  • Save AliYmn/1c9d0da25516eb890a94336886da6b4e to your computer and use it in GitHub Desktop.
Save AliYmn/1c9d0da25516eb890a94336886da6b4e to your computer and use it in GitHub Desktop.
son hali
# -*- coding: utf-8 -*-
import subprocess # Terminal'den komut girmek için kullandığımız komuttur.
# Sıkıştırma İşlemleri
class Compression():
"Sıkıştırma işlemlerini yapan, sınıftır."
def __init__(self,file_path):
self.file_path = file_path # sıkıştırılacak dosyalarımızı bu değişkene aktarıyoruz.
def zipfile(self):
print("Sıkıştırılacak Dosyalar : ", self.file_path.split(' '))
try:
for files in self.file_path.split(' '): # tüm eklenenleri tek tek listeliyoruz, boşlulara göre ayırdık.
print("----")
subprocess.call("zip -r {}.zip {}".format(files,files), shell=True) # sıkıştırma işlemi başlıyor
print("{} adlı dosya başarıyla sıkıştırıldı!.".format(files))
except:
print("Belirtiğiniz yolda böyle bir dosya bulunmadı, lütfen kontrol edin.")
def unzip(self):
print("Çözülecek Dosyalar : ", self.file_path.split(' '))
try:
for files in self.file_path.split(' '): # tüm eklenenleri tek tek listeliyoruz, boşlulara göre ayırdık.
print("----")
subprocess.call("unzip {}".format(files), shell=True) # sıkıştırma işlemi başlıyor
print("{} adlı dosya başarıyla çözüldü!.".format(files))
except:
print("Belirtiğiniz yolda böyle bir dosya bulunmadı, lütfen kontrol edin.")
def add_file(self,new_add_file):
print("Eklenecek Dosyalar : ", new_add_file)
try:
for add_new in new_add_file.split(' '): # tüm eklenenleri tek tek listeliyoruz, boşlulara göre ayırdık.
print("----")
subprocess.call("zip -ur {} {}".format(self.file_path, add_new),shell=True)
print("{} adlı dosya başarıyla eklendi!.".format(new_add_file.split(' ')))
except:
print("Belirtiğiniz yolda böyle bir dosya bulunmadı, lütfen kontrol edin.")
# Start
while True:
print("""
İşlemler Menusu ;
1-) Dosya sıkıştırmak
2-) Zip'den dışarı çıkartma
3-) Sıkıştırılmış dosyaya, yeni dosya ekleme
""")
try:
menu_sec = int(raw_input("Lütfen Menu numarası seçin :"))
except ValueError:
print("Lütfen sayısal değer girelim. ( Örn: 1,2,3 )")
continue
if(menu_sec == ""):
print("Lütfen boş bırakmayın.")
continue
else:
if(menu_sec == 1 or menu_sec == 2 or menu_sec == 3):
if(menu_sec == 1):
zip_files = str(raw_input("Lütfen sıkıştırlacak, dosyaları yazınız : "))
Compression(zip_files).zipfile()
break
if(menu_sec == 2):
zip_files = str(raw_input("Lütfen çözülecek, dosyaları yazınız : "))
Compression(zip_files).unzip()
break
if(menu_sec == 3):
zip_files = str(raw_input("Lütfen .zip dosyasını belirtin :"))
add_files = str(raw_input("Eklenecek dosyaları yazın : "))
Compression(zip_files).add_file(add_files)
break
else:
print("Lütfen geçerli, değer giriniz.")
continue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment