windtalker-zt 发表于 2011-12-30 14:11:26

用批处理文件 *.bat 修改一个txt

d:/1.txt 即在d盘下存在一个文件1.txt,文件1.txt的内容如下

<Host>
123224rsiskd1
sdfkldsfjkslf2
fdsjlfjlsdf3
fdjsofjs;f4
fjdsfdksfkd5
dsfkjgds6
</Host>

现在,我想在</Host>的前面一行,也就是 dsfkjgds6 和</Host>之间添加一行文字,文字如下
<Valve className ="a.b.c.d.e"/>

请问用批处理文件应该如何写?

wenhuawing126 发表于 2011-12-31 11:08:37

我也遇到了同样的问题,要修改txt文件里的内容,现在也没有找到答案

archonwang 发表于 2012-1-2 00:09:37

批处理命令操作txt文件么?

参阅下:
http://www.dzwebs.net/2741.html
http://www.dzwebs.net/2478.html
http://www.dzwebs.net/2636.html
http://www.dzwebs.net/2637.html

wuxue107 发表于 2012-1-3 17:46:43

本帖最后由 wuxue107 于 2012-1-3 17:48 编辑

ren a.txt a.txt.old
for /f %%i in (a.txt.old) do if "</Host>"=="%%i" (
echo ^<Valve className ="a.b.c.d.e"/^>>>a.txt&echo %%i>>a.txt
) else echo %%i>>a.txt
pause

windtalker-zt 发表于 2012-1-3 18:47:24

回复 4# wuxue107


    不好意思本人是小菜, 请问能解释下 这段代码意思吗

windtalker-zt 发表于 2012-1-3 19:06:21

获取当前路径set pa=%cd%   echo %pa% 进入当前路径
set pa=%cd%
set pb="d:"
echo %pa%
cd %pb%
cd
echo 123

windtalker-zt 发表于 2012-1-3 19:06:29

获取当前路径set pa=%cd%   echo %pa% 进入当前路径
set pa=%cd%
set pb="d:"
echo %pa%
cd %pb%
cd
echo 123
页: [1]
查看完整版本: 用批处理文件 *.bat 修改一个txt