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

[特效代码] 把for人性化一点 但是我下面这个代码有错误找高手指点

本帖最后由 咒夜坠 于 2012-6-11 16:04 编辑
  1. echo 下面这个是截取那一段
  2. set /p tokens_=
  3. set for_tokens=tokens^=%tokens_%
  4. if %for_tokens%==tokens^= set for_tokens=
  5. pause
  6. echo 下面这个是用什么作为分隔符号
  7. set /p delims_=
  8. set for_delims=delims^=%delims_%
  9. if %for_delims%==delims^= set for_delims=
  10. echo 下面这一句是跳过带指定符号开头的行
  11. set /p eol_=
  12. set for_eol=eol^=%eol_%
  13. if %for_eol%==eol^= set for_eol=
  14. echo 下面这个是循环中的文本
  15. set txt=原始终端记录.txt
  16. echo 下面这个是do后面的命令
  17. set do=echo %%i^>^>2.txt
  18. set for_f=for /f "%for_eol%%for_delims%%for_tokens%" %%i in (%txt%) do %do%
  19. pause
  20. %for_f%
  21. pause
复制代码
找到问题了
更正后代码如下
  1. setlocal enabledelayedexpansion
  2. echo 下面这个是截取那一段
  3. set /p tokens_=
  4. set for_tokens=tokens^=!tokens_!
  5. if !for_tokens!==tokens^= set for_tokens=
  6. pause
  7. echo 下面这个是用什么作为分隔符号
  8. set /p delims_=
  9. set for_delims=delims^=!delims_!
  10. if !for_delims!==delims^= set for_delims=
  11. echo 下面这一句是跳过带指定符号开头的行
  12. set /p eol_=
  13. set for_eol=eol^=!eol_!
  14. if !for_eol!==eol^= set for_eol=
  15. echo 下面这个是循环中的文本
  16. set txt=原始终端记录.txt
  17. echo 下面这个是do后面的命令
  18. set do=echo %%i^>^>2.txt
  19. set for_f=for /f "!for_eol!!for_delims!!for_tokens!" %%i in (!txt!) do !do!
  20. pause
  21. %for_f%
  22. pause
复制代码

哪句有错误?报错信息呢?

TOP

返回列表