Copia de un archivo en varias carpetas

Resuelto
jth Mensajes publicados 6 Fecha de registro   Estado Miembro Última intervención   -  
dubcek Mensajes publicados 18627 Fecha de registro   Estado Colaborador Última intervención   -
Hola,
Mi pregunta es simple:
En una carpeta llamada Video tengo 350 carpetas y un archivo "test.avi", me gustaría, con la ayuda de un archivo batch, copiar el archivo test en las 350 carpetas.
Si alguien puede explicarme cómo hacerlo, suponiendo que sea posible, sería genial.
Gracias por su ayuda

Configuración: Windows 7 / Firefox 13.0.1

6 respuestas

  1. dubcek Mensajes publicados 18627 Fecha de registro   Estado Colaborador Última intervención   5 660
     
    hello
    desde la línea de comandos de DOS
    for /d %%a in (*.*) do @copy test.avi %%a
    desde un archivo .bat reemplazar %a por %%a
    4
  2. jth Mensajes publicados 6 Fecha de registro   Estado Miembro Última intervención   2
     
    He intentado el comando dos en un archivo bat guardado en mi carpeta Video modificando como se indica ""%%a"", pero no funciona... ¿debo modificar algo más?
    Gracias por su ayuda.
    2
    1. dubcek Mensajes publicados 18627 Fecha de registro   Estado Colaborador Última intervención   5 660
       
      ```html
      @echo off for /d %%a in (*.*) do copy test.avi "%%a"
      ```
      0
  3. jth Mensajes publicados 6 Fecha de registro   Estado Miembro Última intervención   2
     
    Gracias por su respuesta, pero lamento no tener conocimientos de programación y no sé cómo utilizar su ayuda...
    0
  4. jth Mensajes publicados 6 Fecha de registro   Estado Miembro Última intervención   2
     
    Gracias por esta respuesta, funciona con el archivo bat y me evitará un trabajo tedioso de copia.
    0
  5. nico_soul Mensajes publicados 5 Estado Miembro
     
    Hola,

    Sobre la misma base que esta (vieja) discusión:
    Quisiera copiar una carpeta en varios directorios pero no en todos. Por ejemplo, el programa solo copiaría en las carpetas provenientes de una lista creada previamente (Excel, Word, Bloc de notas, ¿otra???).

    Entonces, ¿cuál es el comando que debo integrar para que el programa lea esta lista y distribuya la carpeta únicamente en las carpetas mencionadas?

    Gracias por tu ayuda :)
    0
    1. dubcek Mensajes publicados 18627 Fecha de registro   Estado Colaborador Última intervención   5 660
       
      el archivo lista.txt contiene la lista de destinos, 1 por línea
      @echo off
      set nom=nombre del archivo
      for /F "delims=" %%a in (lista.txt) do copy "%nom%" "%%a\%nom%"
      0
    2. nico_soul Mensajes publicados 5 Estado Miembro
       
      ¡Muchas gracias, funciona perfectamente!
      Sin embargo, ¿la lista tiene que estar obligatoriamente en ".txt"? Porque intenté con un Excel y un Word pero no funcionó...

      ¡Gracias de nuevo!
      0
    3. dubcek Mensajes publicados 18627 Fecha de registro   Estado Colaborador Última intervención   5 660
       
      sí, un bucle for solo puede leer texto
      0
    4. nico_soul Mensajes publicados 5 Estado Miembro
       
      ok gracias.
      Afortunadamente, se puede exportar este archivo txt de Excel directamente :)
      0
    5. nico_soul Mensajes publicados 5 Estado Miembro
       
      Hola,

      Cuando ejecuto la copia múltiple a partir de la lista y el programa no encuentra las carpetas correspondientes (error de escritura en la lista, olvido...) hay un mensaje en el cuadro de diálogo que me avisa. Mi pregunta es la siguiente: ¿es posible recuperar este texto automáticamente y ponerlo en un archivo de texto (por ejemplo "Informe") y mostrarlo automáticamente?
      ¡Gracias por tu ayuda!
      0
  6. heyquem Mensajes publicados 808 Estado Miembro 131
     
    ¿Y en Python?

    from os import walk from shutil import copy dn = 'I:\\Prov Python\\' for subdn in walk(dn).next()[1]: copy(dn + 'test.txt', dn + subdn)


    walk() es un generador recursivo de tripletas (ruta de la carpeta, subcarpetas, archivos)
    Al aplicar next() obtenemos la primera tripleta. Para obtener la lista de subcarpetas, hay que tomar el índice 1.
    -1