Hola amigos, les comento que estoy haciendo un .bat que busca extrae una linea de varios archivos contenidos en una carpeta y la guarda en un txt...
me funciona perfectamente con este código:
Código:
FOR %%d IN (*.msg) DO (
for /f "tokens=3" %%f in ('findstr /i "address:" %%d') do (
set errores=%%f
echo %%f >> correos_rebotados.txt
)
)
Ahora lo que quiero hacer es solamente aplicar la búsqueda de la linea cuando el archivo .msg es de un día atrás...
Encontré un código para calcular el día anterior... pero no se como convidarlos correctamente pues
Tengo algo como esto:
Código:
@echo off
setlocal ENABLEEXTENSIONS
call :dias %date%
set /a j+= -1
call :inc %j%
:dias
for /f "tokens=1,2,3 delims=-/." %%a in ("%1") do (
set dd=%%a&set mm=%%b&set yy=%%c)
set /a dd=100%dd%%%100,mm=100%mm%%%100
set /a z=14-mm,z/=12,y=yy+4800-z,m=mm+12*z-3,j=153*m+2
set /a j=j/5+dd+y*365+y/4-y/100+y/400-2472633
:inc
set /a a=%1+2472632,b=4*a+3,b/=146097,c=-b*146097,c/=4,c+=a
set /a d=4*c+3,d/=1461,e=-1461*d,e/=4,e+=c,m=5*e+2,m/=153,dd=153*m+2,dd/=5
set /a dd=-dd+e+1,mm=-m/10,mm*=12,mm+=m+3,yy=b*100+d-4800+m/10
(if %mm% LSS 10 set mm=0%mm%)&(if %dd% LSS 10 set dd=0%dd%)
FOR %%d IN (*.msg) DO (
echo %dd%/%mm%/%yy% >> correos_rebotados.txt
for /f "tokens=3" %%f in ('findstr /i "address:" %%d') do (
set errores=%%f
echo %%f >> correos_rebotados.txt
)
)
Si se les ocurres algo me darían una gran mano, desde ya mil gracias y suerte!!!