Es decir teniendo la siguiente estructura:
C:/Ruta/carpeta 1/2013
C:/Ruta/carpeta 2/2013
C:/Ruta/carpeta 3/2013
C:/Ruta/carpeta 4/2013
dentro de cada carpeta hay más... 2013,2014,2015,nombre,fichero,etc...
mi intención es crear un script que haga un backup recursivo de todo lo que hay dentro de carpeta 2013 de cada carpeta y me lo comprima en un zip con la ruta...
es decir que busque en:
c:/Ruta/*/2013
y en el zip que salga
carpeta 1/2013/ y todo el contenido ya sean directorios o archivos.
carpeta 2/2013/ y todo el contenido ya sean directorios o archivos.
carpeta 3/2013/ y todo el contenido ya sean directorios o archivos.
carpeta 4/2013/ y todo el contenido ya sean directorios o archivos.
He buscado por todos lados y no encuentro la manera de hacer que un directorio sea como un comodin...
He pensado en hacerlo con un for y token pero tampoco sé como poder hacer que la ultima carpeta cambien de nombre...
Tengo el siguiente script:
Código:
@echo off
:copia
echo Copiando archivos...
xcopy /e /d /y "C:\Ruta\respaldo prueba" "C:\Ruta\pruebas"
echo.
:compresion
set /p comprimir=Desea que cree un fichero comprimido? [s/n]
echo.
if %comprimir%==s (
echo.
echo Comprimiendo...
"C:\Program Files\7-Zip\7z" a -t7z -m0=lzma -mx=9 "C:\Ruta\pruebas\backup_%date:~6,4%%date:~3,2%%date:~0,2%.7z" "C:\Ruta\pruebas"
echo.
echo Fichero comprimido creado!
) else (
if %comprimir%==n (
color echo No se comprimirá!
) else (
echo Ha de poner s o n en miniscula.
goto compresion
)
)
echo.
:eliminar
set /p eliminar=Desea eliminar las carpetas copiadas? [s/n]
echo.
if %eliminar%==s (
echo.
echo Eliminando...
RD /S /Q "C:\Ruta\pruebas"
echo.
echo Ficheros eliminados!
) else (
if %eliminar%==n (
echo no se eliminaran
echo.
)
)
echo.
He conseguido crear una copia de todo y un zip de todo y eliminar las carpetas copiadas pero no consigo que lo haga todo en el mismo directorio por ejemplo "C:\Ruta\respaldo prueba\backup\"
Alguien podría ayudarme?, muchas gracias.