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

是要生成“菜单一.txt”和“菜单二.txt”吗?按照什么规律来生成这两个文本?

TOP

本帖最后由 tmplinshi 于 2011-7-29 17:22 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set file="list.txt"
  4. set n=
  5. set menu1=
  6. :: ---------------------------
  7. set \n=^
  8. :: ---------------------------
  9. for /f "usebackq tokens=2,3 delims=#." %%a in (%file%) do (
  10.     if not defined #%%a (
  11.         set /a n += 1
  12.         set menu1=!menu1!!n! %%a!\n!
  13.         set name!n!=%%a
  14.         set #%%a=#
  15.     )
  16.     if not defined #%%a.%%b (
  17.         set #%%a.%%b=#
  18.     )
  19. )
  20. :menu1
  21. cls
  22. echo !menu1!
  23. set input1=
  24. set /p input1=请选择:
  25. if not defined input1 goto menu1
  26. if !input1! gtr %n% goto menu1
  27. if !input1! lss 0 goto menu1
  28. :menu2
  29. cls
  30. for /f "skip=1 tokens=2 delims=.=" %%a in (' set #!name%input1%! ') do echo %%a
  31. echo,
  32. set input2=
  33. set /p input2=请选择:
  34. if not defined input2 goto menu2
  35. cls
  36. findstr "#!name%input1%!.%input2%楼" %file%
  37. echo,
  38. pause
  39. goto menu1
复制代码
2

评分人数

    • quya: 请教下 Set \n=^ 的意思, 好奇怪的用法。 ...技术 + 1
    • lfoqtal: 谢谢帮忙技术 + 1

TOP

返回列表