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

不太理解你你的代码想干什么
  1. findstr /i "第*.*题" 1.txt   
复制代码
这句提取的是全部文本,那你干脆直接导入文本就行了,为什么还要findstr
  1. call :mm %%i %%j
复制代码
只是要输出内容,为什么还要调用

参数%%j 不能被传递,关键是 %%i里面的“<” 重定向符号

TOP

本帖最后由 ivor 于 2012-1-12 22:52 编辑

回复 3# jjddd001

稍微改了一下
  1. @echo off
  2. :main
  3. set /p a=请选择第几题(1,2)
  4. for /f "tokens=1,2" %%i in (' findstr /i "第%a%题" 1.txt') do (
  5. for /f "delims=< tokens=1,2" %%a in ("%%i") do (
  6. call :mm %%a %%b
  7. )
  8. )
  9. goto main
  10. :mm
  11. @echo off
  12. echo %1
  13. echo %2
  14. ::代码结束
复制代码
Q:另外就是我不明白为什么echo总是关闭?

A:%2是空值,so …………

TOP

返回列表