Board logo

标题: 怎样高效快速重定向文本前N行! [打印本页]

作者: qwd     时间: 2008-4-24 02:44    标题: 怎样高效快速重定向文本前N行!
首先声明FOR速度太低!

MORE只能得到后N行文本!

@echo off
for /f "delims=" %%i in ('findstr /n .* %~nx0') do (
set "str=%%i"
setlocal enabledelayedexpansion
set "str=!str:*:=!"
echo.!str!
endlocal)
pause

Last edited by qwd on 2008-4-24 at 04:19 AM ]

作者: bat-zw     时间: 2008-4-24 07:56    标题: for怎么就慢了,是你方法不对啊:
定义前N行:
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
set /a a+=1
echo %%i
if !a! equ N goto :eof
)

作者: bat-zw     时间: 2008-4-24 16:22    标题: 如要删除本身前N行:
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('type%~nx0') do (
set /a n+=1
if !n! equ 1 (
echo.>%~nx0
) else (
if !n! geq N echo %%i>>%~nx0
)
)