Haciendo respaldos automaticos, parte II
Siguiendo con este post.
como no cacho mucho python , ese lo desarrolle en python 2.5, pero un compañero trato de ejecutarlo en 3.1 y no funciono, al perecen en el cambio de versiones cambio la forma de capturar las exepciones. aqui dejo el programa solucionado para la version 3.1. aun no menejo las excepciones solo muestro un texto "Error Controlado" :( .
--
Atte.
Victor Hugo Saavedra
http://vhspiceros.blogspot.com
como no cacho mucho python , ese lo desarrolle en python 2.5, pero un compañero trato de ejecutarlo en 3.1 y no funciono, al perecen en el cambio de versiones cambio la forma de capturar las exepciones. aqui dejo el programa solucionado para la version 3.1. aun no menejo las excepciones solo muestro un texto "Error Controlado" :( .
import os
import shutil
import datetime
date = datetime.date.today()
dateDelete = date - datetime.timedelta(weeks=2)
sourcePath = r'F:\develop\zeus\trunk'
destRootPath = r'U:\respaldoAutomaticos'
destPath = destRootPath + "\\" + str(date) + " _respaldo"
print ("find old Directories")
try:
print (dateDelete)
for directory in os.listdir(destRootPath):
try:
array = directory.split(" ")[0].split("-")
dateDir = datetime.date(int(array[0]), int(array[1]), int(array[2]))
print (dateDir)
if dateDir < dateDelete:
print ("try drop Directory" + destRootPath + "\\" + directory)
shutil.rmtree(destRootPath + "\\" + directory)
print ('Directory "' + destRootPath + "\\" + directory + '" Deleted')
except Exception:
print ("Error Controlado")
except Exception:
print ("Error Controlado")
for root, dirs, files in os.walk(sourcePath):
dest = destPath + root.replace(sourcePath, '')
if not os.path.isdir(dest):
os.mkdir(dest)
print ('Directory created at: ' + dest)
for f in files:
oldLoc = root + '\\' + f
newLoc = dest + '\\' + f
if not os.path.isfile(newLoc):
try:
shutil.copy2(oldLoc, newLoc)
print ('File ' + f + ' copied.')
except IOError:
print ('file "' + f + '" already exists')
--
Atte.
Victor Hugo Saavedra
http://vhspiceros.blogspot.com
Comentarios
Publicar un comentario