Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Copiar Carpetas
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Copiar Carpetas 
 
Hola.

con esto:

COPY Application.Path & "/archivo" TO User.home & "/archivo"

pero yo quiero copiar una  carpeta entera.

como lo hago?

Mi programa tiene muchos archivos en diferentes carpetas,
necesitaría bastantes lineas de código para ir creando carpetas y copiando los archivos.
 



 
pittusa - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Copiar Carpetas 
 
Puedes hacerlo así por ejemplo:

SHELL "cp -av DIRECTORIO_ORIGEN DIRECTORIO_DESTINO"
 



 
karpaga - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Copiar Carpetas 
 
Utiliza unos Arrays y algo de recursividad y listo

PUBLIC SUB copia_dir(path_origen AS String, path_destino AS String, OPTIONAL tipo as String)

 DIM arDir AS string[]
 DIM arFile AS string[]
 DIM nombredir, nombrefile AS String

 IF  NOT tipo then tipo="*"
 IF NOT Exist(path_destino) THEN
    MKDIR path_destino
 ENDIF
 arfile = Dir(path_origen, tipo, gb.file)  'extraemos los ficheros
 FOR EACH nombrefile IN arfile  'los copiamos
       COPY path_origen &/ nombrefile TO path_destino &/ nombrefile
 NEXT
 ardir = Dir(path_origen, "*", gb.Directory)
 FOR EACH nombredir IN arDir 'extraemos los subdirectorios
        copia_dir(path_origen &/ nombredir, path_destino &/ nombredir) 'usamos la recursividad
    NEXT
END
 


Suerte
 




===================
No podemos regresar
 
última edición por shordi el Viernes, 25 Febrero 2011, 21:12; editado 2 veces 
Editado por Invitado, Jueves, 01 Enero 1970, 01:00:
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Copiar Carpetas 
 
Hola

El problema con esto: SHELL "cp -av DIRECTORIO_ORIGEN DIRECTORIO_DESTINO"

que una vez creado el deb no funciona. si el directorio origen es application.path.

Yo tengo una carpeta en el directorio datos de gambas llena de directorios y ficheros,
quiero que al crear el deb y luego ejecutar el programa se copie esa carpeta donde yo quiera.

si la carpeta que esta dentro de datos se llama (carpeta)

esto tampoco funciona:

COPY Application.Path &/ "carpeta/archivo" TO User.home &/ "archivo"

estoy pensando en meter en datos un archivo comprimido con la dicha carpeta copiarla después donde quiera y descomprimirla allí.

gracias
 



 
pittusa - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Copiar Carpetas 
 
una vez instalado no uses

Application.Path, usa símplemente COPY "datos/carpeta" to user.home &/ "archivo"

Suerte
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Copiar Carpetas 
 
Bueno..

Como no hay bien que por mal no venga..

he comprimido la carpeta de mi programa carpeta_programa.tar.gz.
la he incluido en datos.

y despues en el codigo:

 
IF NOT Exist(User.home & "/carpeta_programa") THEN

  COPY "carpeta_programa.tar.gz" TO User.home &/ "carpeta_programa.tar.gz"
  SHELL "tar -xzvf carpeta_programa.tar.gz" WAIT 'como la carpeta va al directorio del usuario no hace falta ruta.

  ENDIF


Funciona de maravilla.

Edemas ahora el deb me pesa la mitad de 1,50 megas a 207 kb.

He creado el deb lo he instalado en otra maquina y todo bien.

Shordi!

Si pongo esto: COPY "datos/carpeta_programa.tar.gz" TO User.home &/ "carpeta_programa.tar.gz" no funciona

funciona sin poner el directorio datos.

gracias
 



 
última edición por pittusa el Viernes, 25 Febrero 2011, 22:37; editado 2 veces 
pittusa - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Copiar Carpetas Y Subcarpetas shordi Aplicaciones/Fragmentos de Código 1 Sabado, 26 Febrero 2011, 11:21 Ver último mensaje
jsbsan
No hay nuevos mensajes Problemas Para Mover Carpetas En Gambas DiegoSeC General 2 Jueves, 28 Abril 2011, 02:20 Ver último mensaje
DiegoSeC
No hay nuevos mensajes Crear Carpetas En Servidor FTP Desde Gambas drjuano Controles/Librerías/Componentes 1 Lunes, 31 Octobre 2011, 20:15 Ver último mensaje
jsbsan
No hay nuevos mensajes Tamaño De Iconos De Carpetas En GAMBAS3 D... jmpardogarcia7310 General 8 Miercoles, 11 May 2016, 18:15 Ver último mensaje
Shell
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron