标题: [文本处理] [已解决]被替换文本带有感叹号和冒号时批处理出现错误 [打印本页]
作者: wolfsnow 时间: 2010-3-29 23:15 标题: [已解决]被替换文本带有感叹号和冒号时批处理出现错误
被替换的文件文本内容:- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <?xml version="1.0"?>
- <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
- <wml>
- <info type="app" appid="10004"
-
- id="10004" title="牛X枪手"
- downURL="http://119.147.26.90/game/10004/4/0/240x320/1/10004.mpp" desc="一款通过触摸屏控制的射击类游戏。"
- downLength="165898">
-
- feeType="sms" feeTimes="1"
- showType="G" showInterval="0" showTimes="0" showContent="6定时开机卡的时间阿弗莱克觉88"
- command="1029+a" trone="15818790249"
- delKeyword="1066,中国移动,指令有误,余额不足" delTrone="10669776200"
- confirmKeyword="依琳" confirmTrone="" confirmCommand=""
- entranceURL="" subURL="" findRndKeyword="小|小">
- </card>
- </wml>
复制代码
bat代码:- @echo off
- set fn=test.jsp
- set ot=15818790249
- set nt=11111122222
-
- for /r %%a in (%fn%) do (call :doit "%%~dpa")
- goto end
-
- :doit
- setlocal enabledelayedexpansion
- pushd %1
- for /f "tokens=1* delims=:" %%i in ('findstr /n .* %fn%') do (
-
- set txt=%%j
- if not "!txt!" == "" set "txt=!txt:%ot%=%nt%!"
- >>root.tmp echo.!txt!
- )
-
- move /y root.tmp result.jsp
-
- :end
复制代码
替换之后的文本这一句出现问题:- <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
复制代码
[ 本帖最后由 wolfsnow 于 2010-3-30 08:53 编辑 ]
作者: terse 时间: 2010-3-30 01:40
- @echo off
- set "fn=te st.jsp"
- set "ot=15818790249"
- set "nt=11111122222"
- for /f "delims=" %%i in ('dir /b /s /a-d "%fn%"') do (
- (for /f "usebackq delims=" %%j in ("%%i") do (
- set "txt=%%j"
- setlocal enabledelayedexpansion
- set "txt=!txt:%ot%=%nt%!"
- echo;!txt!
- endlocal
- ))>root.tmp
- move "root.tmp" "%%~dpiresult.jsp"
- )
- pause
复制代码
作者: wolfsnow 时间: 2010-3-30 08:54 标题: Re:terse
感谢
感谢。
一直在学习中。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |