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
             )
)