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

[文本处理] [已解决]关于变量内容替换

本帖最后由 gobi918 于 2013-1-10 13:48 编辑

最近遇到一个内容替换的问题,学习bat时间不长,又没怎么接触过内容替换,被难住了,求前辈帮忙,正好学习一下,先谢谢了!

=======================================
set /p http=

问题点:我想把%http%中的一级域名替换为IP地址:
如原网址是http://zhidao.baidu.com/question/70665845.html
我想通过解析zhidao.baidu.com成IP地址:180.149.131.104
最后的想得到结果是:http://180.149.131.104/question/70665845.html
=======================================

自己写的代码如下,其中第6行不知道怎么写才对,求前辈解答:
  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. set /p http=请粘贴网址:
  4. for /f "delims=/ tokens=2" %%a in ("%HTTP%") do  set HTTP1=%%a
  5. for /f "delims=[] tokens=2" %%i in ('ping -l 1 -n 1 %HTTP1% ^| find /i "pinging"') do set http2=%%i
  6. set http=!http:%%http1%%=%%http2%%!
  7. start "D:\Program Files\SogouExplorer\sogouexplorer.exe" %http%
  8. pause
复制代码
===============01:31已实验通过,汗,之前一样的代码却没成功,所以用了双百分号=================
  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. set /p http=请粘贴网址:
  4. for /f "delims=/ tokens=2" %%a in ("%HTTP%") do  set HTTP1=%%a
  5. for /f "delims=[] tokens=2" %%i in ('ping -l 1 -n 1 %HTTP1% ^| find /i "pinging"') do set http2=%%i
  6. set http=!http:%http1%=%http2%!
  7. start "D:\Program Files\SogouExplorer\sogouexplorer.exe" %http%
  8. pause
复制代码

返回列表