标题: (求助)如何在多行数据上增加删除内容、多谢(超级新手)
[打印本页]
作者: wind31
时间: 2007-12-20 11:01
标题: (求助)如何在多行数据上增加删除内容、多谢(超级新手)
请问、如何操作以下这样的数据形式啊。没怎么学习过批处理。求朋友们帮帮忙。谢谢啊。
<
homeName="cn.bootroot.EJB00101AppleLogicHome"
TempName="Temp001_Temp00101Apple"
methodName="executeMain1"
/>
<
homeName="cn.bootroot.EJB00102AppleLogicHome"
TempName="Temp002_Temp00102Apple"
methodName="executeMain2"
/>
....
↓
<
homeName="cn.bootroot.EJB001LogicHome"
TempName="Temp/Temp001"
methodName="Temp00101AppleExecuteMain"
/>
<
homeName="cn.bootroot.EJB002LogicHome"
TempName="Temp/Temp002"
methodName="Temp00102AppleExecuteMain"
/>
....
作者: fastslz
时间: 2007-12-20 15:34
你打哑谜?没说明目的和要求怎么帮你
增加什么?删除哪?
如果要处理的内容包含特殊字符只能用VBS脚本了,先说明目的和要求请zh159或其他VBS高手帮忙
作者: scriptor
时间: 2007-12-20 18:57
lz说明白了, 那里有个箭头.
他的意思是: 将上面的文本转换成箭头下面的
呵呵...
其实这个用bat还是很容易的!!!
作者: qzwqzw
时间: 2007-12-20 19:53
很简单?
你试试看
不过话说回来
如果楼主只是想要下面的结果
直接用Echo把它输出来
确实不太难~~
作者: terse
时间: 2007-12-21 11:37
一看还真的和2楼一样有点摸不着头脑!所以昨天给了个错误的!
针对你的要求发的 无通用
@echo off
for /f "tokens=1* delims=:" %%a in ('findstr /n .* a.txt') do (
set list=%%b
setlocal enabledelayedexpansion
SET aaa=!list:~0,8!
if "!aaa!"=="homeName" set/a num+=1
set list0=Temp00!num!_Temp001
set list1=Temp/Temp00!num!
set list2=0!num!Apple
set list3=executeMain!num!
set list4=Temp0010!num!AppleexecuteMain
call :aaa
)
move /y "a.tmp" "a.txt" 2>NUL
goto :efo
:aaa
set list=!list:%list0%=%list1%!
set list=!list:%list2%=!
set list=!list:%list3%=%list4%!
if not "%%b"=="" (echo/!list! >>a.tmp) ELSE (echo.>>a.tmp)