@echo off set DstDir=C:\testlog set MaxFlag=3 type nul>%DstDir%\result.log for /f "tokens=1*" %%a in ('dir %DstDir%\diff*.log /b') do ( call :count %%a ) goto :eof :count for /f "delims=:" %%h in ('findstr /n .* "%DstDir%\%1"') do ( set line=%%h set fname=%1 ) if %line% gtr %MaxFlag% ( echo %fname%>>%DstDir%\result.log )