Visualizar ficheros entre 2 fechas

Cómo podría con MSDOS ejecutar la instrucción DIR, o un fichero de procesos por lotes y que sólo me visualizara los ficheros que están comprendidos entre 2 fechas

1 Respuesta

Respuesta
1

Espero que me disculpéis pero estoy utilizando un truco para poder poner a disposición del público la respuesta a una pregunta privada realizada en estos mismos términos. He recurrido a alguien de la familia para que la repita pero la deje "en el dominio público". De paso he mejorado un poco la solución cosa que no pude hacer con la original porque la persona que la abrió ya me la había cerrado cuando me di cuenta de que no funcionaba bien con los archivos que incluían un espacio en el nombre.

Para no favorecerme demasiado del truco calificaré discretamente la respuesta.

El bat que hace lo pedido es el siguiente:

----------------------------------------------------------------------------------

@echo off
:: Para listar todos los archivos de disco duro entre dos fechas
:: Retocar el formato del DIR del FOR para ajustarse a las necesidades
if %2.==. goto error
set FIni=%1
set FFin=%2
set FIni=%FIni:~6,4%%FIni:~3,2%%FIni:~0,2%
set FFin=%FFin:~6,4%%FFin:~3,2%%FFin:~0,2%
for /f "tokens=1,2,3,*" %%a in ('dir /a-d /s /tc *.*') do (call :comprobar %%a "%%d")
goto fin
:comprobar
set FArch=%1
set FArch=%FArch:~6,4%%FArch:~3,2%%FArch:~0,2%
if "%FArch%" lss "%FIni%" goto :EOF
if "%FArch%" gtr "%FFin%" goto :EOF
set NbreArch=%2
set NbreArch=%NbreArch:"=%
echo %1 %NbreArch%
goto :EOF
:Error
Echo El formato de la llamada es %0 FechaIni FechaFin
echo Las fechas en formato dd/mm/aaaa
:Fin

----------------------------------------------------------------------------------------------------

Las características de los archivos a buscar pueden acomodarse en el comando DIR embebido en el IN del FOR de la novena línea (el del ejemplo no saca los nombres de carpetas y recorre toda la carpeta y subcarpetas desde donde se ejecuta el BAT.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas