Tengo una carpeta llamada contrato, dentro de ella tengo archivos llamados dela siguiente manera "00361570001.tiff" ..... "00361577008.tiff" . Que los mueva a una carpeta llamada como el ultimo "00361577008", son cerca de 9 millones de archivos por lo que se requiere de un bat para la tarea.
En la carpeta quedarían 8 archivos correlativos llamados :
00361570001.tiff
00361571002.tiff
00361572003.tiff
00361573004.tiff
00361574005.tiff
00361575006.tiff
00361576007.tiff
00361577008.tiff
Lo que se necesita, es que tome los últimos tres caracteres del nombre del archivo, empezando del 001 e incrementando de 1 en 1, hasta llegar nuevamente a 001 que seria otra carpeta.
Cree la carpeta con el nombre del ultimo archivo y los mueva. (Cada vez que se encuentre con un 001 cree una carpeta y mueva los archivos correlativos )
Espero se entienda la idea
Analizar el nombre del archivo, toma los últimos 3 digitos y los compara con el siguiente archivo, si es igual crea una carpeta con el nombre del primero y mueve el archivo, si es mayor sigue con el siguiente hasta que llegue nuevamente a 001, ahí crea una carpeta con el nombre del ultimo archivo, y mueve los archivos a la carpeta creada.
Cualquier ayuda es de suma importancia. Espero me puedan ayudar. Gracias de antemano !!!
En la carpeta quedarían 8 archivos correlativos llamados :
00361570001.tiff
00361571002.tiff
00361572003.tiff
00361573004.tiff
00361574005.tiff
00361575006.tiff
00361576007.tiff
00361577008.tiff
Lo que se necesita, es que tome los últimos tres caracteres del nombre del archivo, empezando del 001 e incrementando de 1 en 1, hasta llegar nuevamente a 001 que seria otra carpeta.
Cree la carpeta con el nombre del ultimo archivo y los mueva. (Cada vez que se encuentre con un 001 cree una carpeta y mueva los archivos correlativos )
Espero se entienda la idea
Código (dos) [Seleccionar]
@echo off
for %%a in (*.tiff) do call :Analiza %%a
GOTO:EOF
:Analiza
(analiza los ultimos tres digitos)
goto Sigue
:Sigue
if (nombre archivo) LSS (nombre archivo siguiente)
goto Carpeta
:Carpeta
mkdir (crear carpeta con el nombre del ultimo archivo)
goto Mover
:Mover
move (mover grupo de archivos a la carpeta creada)
goto EOF
Analizar el nombre del archivo, toma los últimos 3 digitos y los compara con el siguiente archivo, si es igual crea una carpeta con el nombre del primero y mueve el archivo, si es mayor sigue con el siguiente hasta que llegue nuevamente a 001, ahí crea una carpeta con el nombre del ultimo archivo, y mueve los archivos a la carpeta creada.
Cualquier ayuda es de suma importancia. Espero me puedan ayudar. Gracias de antemano !!!