elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Mensajes
Páginas: [1]
1  Programación / Scripting / Como saltarse una carpeta (directorio) y buscar dentro otra carpeta en: 23 Abril 2016, 10:50 am
Hola, estoy intentando hacer un script bat para hacer un backup pero no encuentro como puedo hacer para poner el nombre de una carpeta sea un comodin.

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.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines