Board logo

标题: [文本处理] 批处理如何截取文本的整数行? [打印本页]

作者: poter    时间: 2012-4-30 20:38     标题: 批处理如何截取文本的整数行?

本来是这样写的,想利用环境变量a作计数器跳出循环,但是得到文本仍旧把文本整个给输出了,请问该怎么样写才能达到效果?
  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. echo.
  4. set a=""
  5. for /f "tokens=*" %%b in (1.txt) do (
  6. echo %%b>>2.txt
  7. set /a a+=1 & if "%a%"=="10" (
  8. goto end
  9. )
  10. )
  11. :end
  12. set a=
复制代码

作者: canyuexiaolang    时间: 2012-4-30 20:53

for里的goto挑不出去。call一下再goto :eof吧。
作者: canyuexiaolang    时间: 2012-4-30 20:55

  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. echo.
  4. call :out
  5. pause & exit
  6. :out
  7. for /f "tokens=*" %%b in (1.txt) do (
  8. echo %%b>>2.txt
  9. set /a a+=1 & if !a! equ 10 goto :eof
  10. )
  11. goto :eof
复制代码

作者: poter    时间: 2012-4-30 21:00

回复 3# canyuexiaolang

谢谢你,我已经知道错在哪里了!! 感谢!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2