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

[文本处理] [已解决]两文件对应行取值的批处理特殊符号的提取

[attach]3801[/attach][attach]3802[/attach]

我的代码
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1-5 delims=: " %%a in ('findstr /n .* temp.txt') do set _%%a=%%b,"%%c",%%d,%%e
  3. for /f "tokens=1-3 delims=: " %%a in ('findstr /n .* temp1.txt') do echo ^(!_%%a!,%%c^),>456.sql
  4. pause
复制代码
temp的内容第一行内容(我只取的其中一行,文件本身有很多行):4297641018        为我独尊天下:-        2739169        1
temp1的内容第一行内容(我只取的其中一行,文件本身有很多行):4297641018        41
但是取出来的结果却是:(4297641018,"为我独尊天下",-,2739169,41),
不知所以
1

评分人数

    • batman: 感谢给帖子标题标注[已解决]字样PB + 2

哦 知道了,分隔符

TOP

请问哪位高人还有别的办法没有

TOP

多用一层for循环:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=1* delims=:" %%a in ('findstr /n .* temp.txt') do (
  3.      for /f "tokens=1-4" %%c in ("%%b") do set "_%%a=%%c,"%%d",%%e,%%f"
  4. )
  5. (for /f "tokens=1-2 delims=:tab" %%a in ('findstr /n .* temp1.txt')  do echo ^(!_%%a!,%%b^),)>456.sql
复制代码
***共同提高***

TOP

4# batman


哈哈,非常感谢!

TOP

返回列表