Script y raíz de la partición

Guille tanto tiempo, ¿cómo andas?
Te escribo para comentarte un problema que tengo...
Te acrodas cuando te conectaste por remoto y resolviste el problema del script
El cual era este...
--------------------------------------------
@echo off
E:
cd \comprueba
for /f "tokens=*" %%a in ('dir /b /s *.*') do (call :comprobar "%%a")
goto :fin
:comprobar
rem echo Para comprobar se recibe "%1"
set c=%1
rem echo La variable c contiene "%c%"
set d=%c:"=%
rem echo La variable d contiene "%d%"
set arch=C%d:~1%
echo La variable arch contiene "%arch%"
if exist "%arch%" goto :EOF
ECHO Archivo "%arch%" no encontrado
set arch=E%arch:~1%
del "%arch%"
goto :EOF
:FIN
Pause
---------------------------------------------------------------------
Lo que hacia el script es tomar el archivo "XXX" que se encontraba en la carpeta comprueba de la unidad E:/ y lo buscaba en la carpeta comprueba de la unidad C:/. Si dicho archivo no estaba entonces lo borraba de la carpeta comprueba de la unidad E:/...
Para eso anda perfecto.
Lo que necesito hacer es que en vez de meterse a una cierta carpeta de la unidad E:/(para C:/ también), lo haga directamente sobre la raíz de la partición.
Probé sacando el cd/comprueba pero no funciona...
Otra cosa que no me doy cuenta es saber que variable tengo que cambiar para adaptarlo a la letra de unidad que yo quiera...

1 respuesta

Respuesta
1
Un placer volver a saber de ti.
Voy a ver si te entendí bien o solo un poco.
En el problema original se hacía una especie de backup del contenido de una unidad C: sobre otra unidad E:
Luego nos embarcamos en una comprobación posterior que permitía eliminar los archivos que habían ido desapareciendo en el transcurso del tiempo, a la que corresponde el código que has copiado. En esta comprobación nos centramos en una carpeta C:\comprueba, pero era solo para agilizar las pruebas, se podría haber hecho sobre toda la unidad.
¿Lo qué quieres ahora es copiar toda la unidad C: sobre la unidad E: en condiciones similares, incluida la eliminación de los archivos obsoletos?
Teóricamente debería funcionar con lo que probaste (eliminar la línea "cd \comprueba") pero puede no ser suficiente porque el comando "E:", que fuerza a cambiar de unidad, no indica explícitamente en que carpeta se debe situar en la unidad de destino y podría haberse quedado situado sobre otra carpeta. Para forzar a que se sitúe en la raíz de la unidad prueba a sustituirla por "cd \"
Pero intuyo que el problema puede ser otro. Dime que mensajes te salen. Probar con todo el backup global puede ser muy laborioso. Para las pruebas sería mejor trabajar sobre un entorno más controlado (una unidad D: casi vacía, por ejemplo).
Suerte.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas