zip_dir.py:
import os
import zipfile
def zip_dir(dirname,zipfilename):
filelist=[]
if os.path.isfile(dirname):
filelist.append(dirname)
else:
for root ,dirs,files in os.walk(dirname):
for name in files:
filelist.append(os.path.join(root,name))
zf=zipfile.ZipFile(zipfilename,"w",zipfile.zlib.DEFLATED)
for tar in filelist:
arcname=tar[len(dirname):]
zf.write(tar,arcname)
zf.close()
print('Successful!')
print('zip has been kept in',zipfilename)
backup.py:
import os
import time
import zip_dir
source='/Users/michael/example/notes'
target_dir='/Users/michael/example/backup'
if not os.path.exists(target_dir):
os.mkdir(target_dir)
today=target_dir + os.sep + time.strftime('%Y%m%d')
now=time.strftime('%H%M%S')
comment=input('Enter a comment -->')
if len(comment)==0:
target=today + os.sep + now + '.zip'
else:
target=today + os.sep + now + '_' + comment.replace(' ','_') + '.zip'
if not os.path.exists(today):
os.mkdir(today)
print('Successfully created directory',today)
print('Running:')
zip_dir.zip_dir(source,target)