Ms-Dos - copiar carpetas con el mismo nombre

 
Vista:
sin imagen de perfil
Val: 10
Ha aumentado su posición en 2 puestos en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por drewdty (6 intervenciones) el 18/11/2019 17:17:25
estoy intentando copiar varias carpetas con el mismo nombre pero no lo consigo
en mis documentos tengo varias carpetas llamadas miguel ,repartidas por imagenes videos documentos etc
quiero hacer in bat para que me copie dichas carpetas a modo de backup y que respete los directorios
tengo este pero solo me copia los archivos y necesito las carpetas completas
1
xcopy C:*miguel* /s/d/f G:\copia
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por Antoni Masana (811 intervenciones) el 18/11/2019 18:44:50
Seguro que hay otras formas de hacerlo, esta es una de ellas:

1
2
3
@echo off
dir /S /B /A:D | findstr /i /v miguel >C:\Tmp\Excluir.tmp
xcopy C:\*.*  G:\copia /s /d /f /EXCLUDE:C:\Tmp\Excluir.tmp

La primera linea, mejor dicho la segunda crea una lista de directorios que no tienen la palabra MIGUEL y en la siguiente copia todo excluyendo los directorios que no tienen la palabra MIGUEL.

Faltaría probarlo, yo uso esta opción del XCOPY pero creo a mano las exclusiones.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha aumentado su posición en 2 puestos en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por drewdty (6 intervenciones) el 18/11/2019 19:27:04
gracias por tu pronta respuesta
pero no me funciona
en que directorio debo ejecutar el bat?
en c:/temp no me crea ningun archivo
algo hare mal
gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por Antoni Masana (811 intervenciones) el 18/11/2019 21:42:34
Eh el ejemplo he puesto que crea en el directorio TMP pero si no existe y tienes otro nombre cambialo.

1
2
3
@echo off
dir /S /B /A:D | findstr /i /v miguel   >C:\Temp\Excluir.tmp
xcopy C:\*.*  G:\copia /s /d /f /EXCLUDE:C:\Temp\Excluir.tmp

Si aun y asi no funciona quita el @echo off y añade al final un pause y podras ver que mensajes de error da:

1
2
3
dir /S /B /A:D | findstr /i /v miguel   >C:\Temp\Excluir.tmp
xcopy C:\*.*  G:\copia /s /d /f /EXCLUDE:C:\Temp\Excluir.tmp
pause

Por cierto sabes que hace la opción /D
1
2
3
/D:m-d-a     Copia archivos cambiados durante o después de la fecha.
             Si no se da una fecha, copia sólo aquellos archivos cuya
             fecha de origen es más reciente que la fecha de destino.

Y la /F
1
2
/F           Muestra los nombres completos de los archivos de origen y
             destino mientras realiza la copia.

Yo uso la opcione /C /I /Y /M

1
/C           Continúa copiando incluso si ocurren errores.

1
2
/I           Si el destino no existe y se está copiando más de un archivo,
             se da por supuesto que el destino debe ser un directorio.

1
2
/Y           Suprime la petición de confirmación de sobrescritura de un
             archivo de destino existente.

1
2
3
/M           Copia sólo archivos con el atributo de archivo de
             almacenamiento establecido; desactiva el atributo de archivo
             de almacenamiento.


Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha aumentado su posición en 2 puestos en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por drewdty (6 intervenciones) el 21/11/2019 14:38:41
perdon por mi tarde respuesta,creia que habia contestado pero por lo visto no se guardo la respuesta
al fin funciono, fue por un tema de gramatica al tener la carpeta Temp con T minuscula temp
ahora el problema es que tengo varios gigas donde buscar y tarda un monton para crear el achivo de exclusion y pienso yo
que no tengo ni P*** idea de CMD ni script ,
de hacer el archivo solo buscando las carpetas necesarias haciendo
1
dir miguel /AD /b /s >Temp.txt
y luego que xcopy solo copie esas carpetas archivos incluidos
si fuese posible creo que seria mas rapido
hablo desde la mas profunda ignorancia
estoy leyendo un monton sobre el tema y estoy intentando aprender a marchas forzadas
gracias por la ayuda y perdon por las molestias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha aumentado su posición en 2 puestos en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por drewdty (6 intervenciones) el 21/11/2019 16:57:25
estoy intentadolo de nuevo
con
1
2
3
dir /S /B /A:D | findstr /i /v miguel   >C:\Temp\Excluir.tmp
xcopy C:\*.*  G:\copia /s /d /f /EXCLUDE:C:\Temp\Excluir.tmp
pause
y me da el siguinte error No se puede realizar una copia cíclica
ya no se que hacer mas :(
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por Antoni Masana (811 intervenciones) el 21/11/2019 19:31:06
Prueba esto:

1
dir *miguel* /A:D /B /S >C:\Temp\Excluir.tmp

Que seguramente hace lo mismo que esto:

1
dir /S /B /A:D | findstr /I /V miguel   >C:\Temp\Excluir.tmp

El error se debe producir porque G: no es otro disco sino el mismo disco C: o una parte de él.

Con el comando SUBST se asocia un directorio como si fuese otro disco:

1
2
3
4
5
6
7
8
9
10
11
12
C:\>subst /?
Asocia una ruta de acceso con una letra de unidad.
 
SUBST [unidad1: [unidad2:]ruta]
SUBST unidad1: /D
 
  unidad1:       Especifica la unidad virtual a la que se asigna la ruta.
  [unidad2:]ruta Unidad física y ruta de acceso que se desea asignar
                 a una unidad virtual.
  /D             Elimina una unidad sustituida (virtual).
 
Escriba SUBST sin parámetros para ver la lista de los dispositivos virtuales.

EJEMPLO:

1
C:\> SUBST G: C:\BACKUP


Para verificar si es así ejecuta el comando sin parámetros.
Otra posibilidad es que tengas mapeado tu propio disco como una unidad de red: Prueba NET USE


Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha aumentado su posición en 2 puestos en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por drewdty (6 intervenciones) el 21/11/2019 21:07:09
si tienes razon
1
dir *miguel* /A:D /B /S >C:\Temp\Excluir.tmp
es lo mismo que
1
dir /S /B /A:D | findstr /I /V miguel   >C:\Temp\Excluir.tmp
al final no tarda tanto como creia
ahora si que me vuelvo loco con nuevos parametros que no conocia
SUBST y NET USE
al escribir desde C
1
C:\> SUBST
no me dice nada y desde G tampoco
cuando pongo
1
2
3
NET USE
Se registrarán las nuevas conexiones.
No hay entradas en la lista.

pero al darme la explicacion de
1
El error se debe producir porque G: no es otro disco sino el mismo disco C: o una parte de él.
veo que el problema viene porque intento copiar y guardar en la misma unidad
he intentado esto
y parece que algo hemos avanzado
ahora cambiando la unidad de copia

1
2
dir /S /B /A:D | findstr /i /v miguel   >C:\Temp\Excluir.tmp
xcopy c:\*.*  I:\copia /s /d /f /EXCLUDE:C:\Temp\Excluir.tmp
pero me guarda cosas que no quiero y lo que quiero no lo guarda
me guarda cosas que estan en C: pero nada de la del directorio de exclusion
siento molestarte tanto si es molestia lo dejamos creia que seria mas facil
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

copiar carpetas con el mismo nombre

Publicado por Antoni Masana (811 intervenciones) el 22/11/2019 01:49:40
Para hacer la copia sobre el mismo disco C sin que entre en bucle se puede hacer asi:

1
2
dir /S /B /A:D | findstr /i /v miguel  | findstr /i C:\Copia   >C:\Temp\Excluir.tmp
xcopy c:\*.*  I:\copia /s /d /f /EXCLUDE:C:\Temp\Excluir.tmp

Le digo que meta en excluir todas las rutas que NO tengan la palabra Miguel y todas las que empiecen por Copia.

Ahora la segunda parte como no se que hace la copia y no quieres y que no copia y si quieres copiar, no te puedo ayudar.

Quizás el parámetro /D no esta haciendo lo que esperas que haga.
El parámetro /L te muestra los ficheros que se copiaran y puede servir para ver si hace o no lo que deseas y a partir de esa lista hay que ver que es lo que falla.
Bueno en realidad no falla, hace lo que le decimos no lo que quedemos que haga.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar