标题: [文本处理] 批处理怎样替换html文件中指定一行的内容? [打印本页]
作者: hxspring 时间: 2012-8-17 10:19 标题: 批处理怎样替换html文件中指定一行的内容?
本帖最后由 hxspring 于 2012-8-17 10:20 编辑
如何修改这个html内容里的这一行<div id="botton1"><a href="http://www.baidu.com" target="_blank"></a></div> 为
<div id="botton1"><a href="http://www.google.com" target="_blank"></a></div>
<div id="content">
<ul>
<li><a href="http://www.baidu.com" target="_blank" class="edde37">百度
</a></li>
<li><a href="http://www.baidu.com" target="_blank" class="edde37"> 百度
</a></li>
<li><a href="http://www.baidu.com" target="_blank" class="edde37">百度
</a></li>
<li><a href="http://www.baidu.com" target="_blank">百度
</a></li>
<li><a href="http://www.baidu.com" target="_blank">百度
</a></li>
</ul>
</div>
</div>
<div id="right">
<div id="x"><a href="CmdExit://win.close"><img src="x.gif" width="18" height="18" /></a></div>
<div id="botton">
<div id="botton1"><a href="http://www.baidu.com" target="_blank"></a></div>
<div id="botton2"><a href="Cmdrun://web win.close" ></a></div>
用SET命令好像不行,是不是因为要修改的这行内容里有特殊符号导致。
作者: canyuexiaolang 时间: 2012-8-17 11:38
set 可以。- setlocal enabledelayedexpansion
- set "line=>>>>>>>>>>"
- set "line=!line:>=1!"
- echo !line!
- pause
复制代码
作者: hxspring 时间: 2012-8-17 13:20
本帖最后由 hxspring 于 2012-8-17 13:41 编辑
麻烦版主能不能帮我把完整的代码都写出来,后面的替换文件内容等。
set f=d:\1\index.html
setlocal enabledelayedexpansion
set "line=<div id="botton1"><a href="http://www.baidu.com" target="_blank"></a></div>"
set "line=!line:>=<div id="botton1"><a href="http://www.google.com" target="_blank"></a></div>!"
echo !line!
pause
作者: 狗屁不通 时间: 2012-8-17 13:37
wfr 文件.txt -f:"baidu" -t:"google"
直接下载wfr.exe
http://baiy.cn/utils/wfr/wfr.rar
放到Windows\SYSTEM32里即可。
作者: hxspring 时间: 2012-8-17 13:43
wfr 文件.txt -f:"baidu" -t:"google"
直接下载wfr.exe
http://baiy.cn/utils/wfr/wfr.rar
放到Windo ...
狗屁不通 发表于 2012-8-17 13:37
这样会替换html 里所以的百度链接吧。我只要替换其中的一条。
作者: 狗屁不通 时间: 2012-8-17 14:13
回复 5# hxspring
- wfr ok.txt -f:"\"" -t:"@"
- wfr ok.txt -f:"botton1@><a href=@http://www.baidu.com" -t:"botton1@><a href=@http://www.google.com"
- wfr ok.txt -f:"@" -t:"\""
复制代码
作者: apang 时间: 2012-8-17 15:14
- @echo off
- set "v=<div id="botton1"><a href="http://www.baidu.com" target="_blank"></a></div>"
- (for /f "tokens=1* delims=:" %%a in ('findstr /n ".*" 1.txt') do (
- if "%%b" neq "%v%" (echo,%%b
- ) else for %%c in ("%v:baidu=google%") do echo,%%~c
- ))>2.txt
复制代码
作者: hxspring 时间: 2012-8-17 17:03
回复 hxspring
狗屁不通 发表于 2012-8-17 14:13
非常感谢,用这个确实可以。要是可以不用拷文件到system32下直接用批处理是最好的。
作者: hxspring 时间: 2012-8-17 17:05
apang 发表于 2012-8-17 15:14
试了下,用这个好像不行。
作者: hxspring 时间: 2012-8-17 17:07
请教大家,只用批处理来实现,还有好的方法没有?
作者: hxspring 时间: 2012-8-25 10:34
求助,只用批处理来实现。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |