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

[文本处理] [已解决]根据两个文本对应行的关系,替换成新的文本?

哥们,我有一个文本web.txt  里面记了好多个网址,都是.html结尾的  
如:  
http://www.qq.com/1012/005/135.html
http://pc.dv.com/1012/005/235.html
http://www.poq.com/1012/005/1235.html
http://www.163.com/1012/005/135.html

而文本h.txt 如下:
d:\2011\qq\  
e:\2011\dv\
f:\2011\poq\
f:\2011\163\

我现在就是想把 web.txt 的网址,变成真实的路径写在news.txt下  结果是这样的:
d:\2011\qq\1012\005\135.html
e:\2011\dv\1012\005\235.html
f:\2011\poq\1012\005\1235.html
f:\2011\163\1012\005\135.html

请问这批处理怎样写,比较好?

[ 本帖最后由 ik22 于 2011-1-18 19:18 编辑 ]
1

评分人数

    • hanyeguxing: 感谢给帖子标题标注[已解决]字样PB + 2
谦虚是持续成功的保证..
www.13168.org

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=. tokens=2" %%i in (web.txt) do (
  4. for /f "delims=" %%j in ('findstr /c:"%%i" web.txt') do (
  5. for /f "delims=" %%a in ('findstr /c:"%%i" h.txt') do (
  6. set "x=%%j"
  7. set y=!x: http://www.%%i.com/=%%~da\2011\%%i\!
  8. set z=!y: http://pc.%%i.com/=%%~da\2011\%%i\!
  9. set z1=!z:/=\!
  10. echo !z1!>>13.txt)))
  11. for /f "delims=" %%i in (13.txt) do (
  12. if not defined %%i set %%i=A && echo %%i>>news.txt)
  13. del 13.txt
  14. pause
复制代码


看高手帮你解。我的你先用用看吧。。。
菜鸟学批,一批一大批~~~~~~

TOP

  1. @echo off
  2. SetLocal EnableDelayedExpansion
  3. set /a n = 0, m = 0
  4. for /f "delims=/ tokens=2,*" %%a in (web.txt) do (
  5.     set /a n += 1
  6.     set _!n!=%%b
  7. )
  8. (for /f "delims=" %%L in (h.txt) do (
  9.     set /a m += 1
  10.     for %%R in (_!m!) do set var=%%~fL!%%R!
  11.     echo !var:/=\!
  12. )) >news.txt
复制代码

[ 本帖最后由 tmplinshi 于 2011-1-18 12:58 编辑 ]
1

评分人数

TOP

返回列表