找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 22153|回复: 3

[文本处理] 批处理代码一样分开使用结果正确 合并后结果不正确求解

[复制链接]
发表于 2012-7-30 19:24:15 | 显示全部楼层 |阅读模式
引用代码一和代码二
  1. call 代码一

  2. call 代码二.bat
复制代码
代码一
  1. @echo off
  2. setlocal enableDelayedExpansion
  3. del 50.txt 51.txt 52.txt 50.txt 53.txt 54.txt 55.txt
  4. for /f "delims=: tokens=2" %%i in (原始记录.txt) do echo %%i>>50.txt
  5. for /f "delims=" %%i in (50.txt) do (
  6.     if not defined %%i set %%i=A & echo %%i>>51.txt
  7. )
复制代码
代码二
  1. @echo off
  2. setlocal enableDelayedExpansion
  3. for /f "delims=- tokens=1,2" %%i in (51.txt) do (
  4. @echo %%i>>52.txt
  5. @echo %%j>>52.txt
  6. )
  7. for /f "eol=-" %%i in ('find "6" 52.txt') do echo %%i>>53.txt

  8. for /f "delims=" %%i in (53.txt) do (
  9.     if not defined %%i set %%i=A & echo %%i>>54.txt
  10. )
  11. del 50.txt 51.txt 52.txt 53.txt
  12. pause
复制代码
发表于 2012-7-31 10:44:21 | 显示全部楼层
试试代码一和代码二的最后加上endlocal语句
 楼主| 发表于 2014-2-13 15:19:52 | 显示全部楼层
回复 2# apang


    这个问题好像已经很久了
但是当时我是将后2个批处理合并在一起不好用
但是就像现在这样分开却可以正常使用
发表于 2014-2-13 16:50:41 | 显示全部楼层
  1. @echo off
  2. del 50.txt 51.txt 52.txt 50.txt 53.txt 54.txt 55.txt
  3. for /f "delims=: tokens=2" %%i in (原始记录.txt) do echo %%i>>50.txt
  4. for /f "delims=" %%i in (50.txt) do (
  5.     if not defined 1_%%i (
  6.         set 1_%%i=A
  7.         echo %%i>>51.txt
  8.     )
  9. )

  10. for /f "delims=- tokens=1,2" %%i in (51.txt) do (
  11.     echo %%i>>52.txt
  12.     echo %%j>>52.txt
  13. )
  14. for /f "eol=-" %%i in ('find "6" 52.txt') do echo %%i>>53.txt

  15. for /f "delims=" %%i in (53.txt) do (
  16.     if not defined 2_%%i (
  17.         set 2_%%i=A
  18.         echo %%i>>54.txt
  19.     )
  20. )
  21. del 50.txt 51.txt 52.txt 53.txt
  22. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-21 02:47 , Processed in 0.013887 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表