@echo off
for /f "delims=" %%a in ('dir/b *.txt')do (
echo %%a
for /f %%b in ('type "%%a"^|find /v /c ""')do set/a "m=%%b-1"
call :y "%%a"
move temp.yky "%%a")
pause&exit
:y
(for /f "tokens=1* delims=:" %%c in ('findstr/n .* %1')do if %%c leq %m% (
if %%c equ 3 (
more +%m% %1)else echo/%%d
))>temp.yky
goto :eof
需要提醒一下,最后一行之后不能再有空行(最多可有一个换行,再加空格或多换行就会把它当成最后一行)
温馨提示:答案为网友推荐,仅供参考