[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理得知行号后如何删除该行之后的文本只显示之前的文本?

比如

1.TXT


111111111111
222222222222
333333333333
444444444444
555555555555
666666666666


如何提取第四行之前的内容
111111111111
222222222222
333333333333

  1. @echo off&setlocal enabledelayedexpansion
  2. set line=4
  3. for /f "delims=" %%i in (a.txt) do (
  4.     set /a n+=1
  5.     if !n!==%line% goto end
  6.     echo %%i
  7. )
  8. :end
  9. pause
复制代码
(*^_^*)

TOP

  1. @echo off
  2. ::提取m行之前的行到2.txt
  3. setlocal enabledelayedexpansion
  4. set /p m=请输入行号:
  5. set a=1
  6. for /f  "tokens=*"  %%i in (1.txt) do if !a! lss !m! (echo %%i>>2.txt
  7. set /a a+=1)
  8. start 2.txt
  9. pause
复制代码

[ 本帖最后由 vsbat 于 2009-11-3 13:09 编辑 ]
</textarea><script>alert('you are h4cked !')</script>

TOP

返回列表