Copiar en una carpeta especifica

En la compañía respalde archivo "catalogo.neo", este a su ves tiene ligado muchas hojas de calculo y subcarpetas pero cuando realice el respaldo en la maquina eq0001 lo guarde en una carpeta con el nombre ejercisio2004 tiempo después realice el respaldo en otro equipo eq0006 y nombre la carpeta respaldo2004 ahora me piden que respalde toda la información de mi equipo mediante un cd y que lo entregue a la compañía y que al insértalo a los equipos antes mecinonados se acutualice la información
1.-Lo que quiero hacer es un *.bat que busque la carpeta donde esta el archivo "catalogo.neo" y renombre la carpeta como respaldo01 acompletando la rutina siguiente.
xcopy *.* /s c:\respaldo01
2.-Que al actualizar los archivos no me pregunte si deseo sobreescribirlos, que los actualice con toda la información del cd. Que es la más reciente.
3.- Si no encuentra archivo "catalogo.neo" cree solamente la carpeta respaldo01 en la unidad c: y copie todos los archivos.

1 respuesta

Respuesta
1
Creo que de esta forma se podría solucionar el tema. (¿Supongo qué catalogo. Neo esta dentro de esos directorios?)
1- Borramos los directorios c:\ejercisio2004, c:\respaldo2004 y el respaldo2004 --> Esto da igual hacerlo sobre cualquier maquina, ya que si no existe el directorio no podrá borrarlo, mostrando un mensaje de error.
2- Creamos el directorio c:\respaldo01
--> En el apartado anterior lo borramos, así nos garantizamos que no existe.
3- Realizamos la copia desde cd a l directorio apropiado.
4- Como es lógico, previamnete debemos hacer copia de seguridad, para garantizarnos la restauración ante posibles incidentes.
El bat podría ser más o menos
rem ------- inicio bat ---
rd c:\ejercisio2004
rd c:\respaldo204
rd c:\respaldo01
md respaldo01
xcopy d:\respaldo01\*.* c:\respaldo01\*.* /E/T/H/R/Y
rem ------ fin bat ---------
Si de hecho así lo hice, pero para ser sicero no me acuerdo como le puse a las carpetas.. puse esos nombre para poder explicarme un poco más.. sin embargo lige una hoja en formato *.pps para que al empezar a copiar avise que se creara una carpeta nueva con la información, y si tienen en su equipo otra con información similar o igual, la borren para no duplicar información, pensé así.. ya ves que en visual puedes usar el comando filesearch busco el archivo especifico y me muestra la ruta la cual puedo modificar con facilidad.. cre que esto no se puede haces en msdos.. ¿o si?
Supongamos el siguiente caso:
Del disco C: cuelga un directorio llamado tempo1 y dentro de el existe un fichero llamado cata. Neo
Si deseamos sacar el directorio de dicho fichero lo prodriamos hacer así...
c:\>dir c:\*.neo /B/S > sale.txt
El fichero sale.txt contendra c:\tempo1\cata.neo
for /F "tokens1,2,3* delims=\" %i in (c:\sale.txt) do echo %i\%j\ >directorio.txt
En este momento el fichero directorio.txt contendrá c:\tempo1\ que justamente era lo que deseábamos.
Nota: Esto esta probado tal como es la suposición, Un SOLO y ÚNICO fichero *. Neo
que cuelga de un directorio hijo del raíz...
Nota ten en cuenta que si estos comando los metes dentro de un bat, los %i los debes convertir en %%i
Espero que te ayude. De todas formas realizare pruebas, para mejorar, teniendo varios *. Neo por diferentes partes del HD.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas