Desde antes les digo que no sé como publicar u.u
Soy principiante en underc0de y en python... les comparto una función que he hecho para copiar un archivo o un directorio la cual uso para respaldar archivos en windows
Faltará el return 0 o -1 en caso de error.. yo que sé?!
Hasta ahora funcionó:
copia("archivo.txt", "archivo2.txt)
copia("archivo.txt", "directorio")
copia("archivo.txt", "directorio\archivo3.txt")
copia("archivo.txt") # crea un "archivo_copia.txt"
copia("directorio", "directorio2")
copia("directorio") # crea un "directorio_copia"
copia() # hace una copia del directorio actual_copia
Espero les sea de utilidad o si se puede mejorar me lo hagan saber.. gracias
import os # clsFTP, copia(), clsUAC
# import sys # clsUAC
# import ctypes # clsUAC
import shutil # copia()
from distutils.dir_util import copy_tree # copia()
def copia(strOrigen="", strDestino=""):
if strOrigen == "": # Si no se pasa origen
strOrigen = os.getcwd() # se toma el directorio actual
if os.path.exists(strOrigen): # Si existe el origen let's play...
if strDestino == "": # si no se pasa el destino entonces será origen_copia
strDestino = os.path.splitext(strOrigen)[0] + "_Copia" + os.path.splitext(strOrigen)[1]
if os.path.splitext(strDestino)[1] == "": # posible directorio
os.makedirs(strDestino, exist_ok=True) # Crea los directorios
if os.path.isfile(strOrigen): # si queremos copiar un solo archivo
os.makedirs(os.path.dirname(os.path.abspath(strDestino)), exist_ok=True)
shutil.copy(strOrigen, strDestino)
if os.path.isdir(strOrigen): # si lo que queremos copiar es un directorio
copy_tree(strOrigen, strDestino)
Si todo va bien, luego les comparto la clase clsFTP y la clsUAC
Ejemplo:
lstARespaldar = [r"C:\dir1\dir2", r"C:\dir3\dir4\archivo.txt"]
strRutaRespaldo = r"C:\dirRespaldo"
for strOrigen in lstARespaldar:
print("Copiando", strOrigen, " a ", strRutaRespaldo)
copia(strOrigen, strRutaRespaldo)
print("Respaldo Finalizado...")
@Gn0m3 (https://underc0de.org/foro/index.php?action=profile;u=17035) justamente lo que me preguntabas ayer. Acá esta hecho en python, le modificas un par de lineas y te queda lo que vos querías.
Saludos y muy buen aporte @darkucla (https://underc0de.org/foro/index.php?action=profile;u=97891)!!
ANTRAX