如何只替换字符,不覆盖原先文件?

会飞的小洋洋 2010-03-23 03:30:59
http://topic.csdn.net/u/20100323/14/8426f191-9061-4e20-8924-14d0be98e357.html

在上述帖子中,NODENAME 和TCPSERVERADDRESS 取得了正确的本地数据。
但是t.txt原文件中还有很多别的内容,整个t.txt被替换掉了。

----------原t.txt文件
这个是原数据,原数据,不动的原数据
NODENAME d-srch01
TCPSERVERADDRESS 192.168.0.114
这个是原数据,原数据,不动的原数据
----------新t.txt文件
这个是原数据,原数据,不动的原数据
NODENAME localservername
TCPSERVERADDRESS 192.168.0.1
这个是原数据,原数据,不动的原数据
...全文
128 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tangchao5220 2010-03-23
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 ljc007 的回复:]
test.bat


BatchFile code
@echo off
for /f "tokens=4" %%a in ('route print^|findstr 0.0.0.0.*0.0.0.0') do (
set IP=%%a
)
(for /f "tokens=1*" %%a in (t.txt) do (
if /i "%%a" equ "NODEN……
[/Quote]
ljc007 2010-03-23
  • 打赏
  • 举报
回复
test.bat

[code=BatchFile]@echo off
for /f "tokens=4" %%a in ('route print^|findstr 0.0.0.0.*0.0.0.0') do (
set IP=%%a
)
(for /f "tokens=1*" %%a in (t.txt) do (
if /i "%%a" equ "NODENAME" (
echo,NODENAME %computername%
) else if /i "%%a" equ "TCPSERVERADDRESS" (
echo,TCPSERVERADDRESS %IP%
) else (
echo,%%a %%b
)
))>"%temp%\t_new.tmp"
move /y "%temp%\t_new.tmp" t.txt
[/code]
会飞的小洋洋 2010-03-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 missing77 的回复:]
如果你的意思是在原有数据不动的情况下新加入数据,那就把程序中> 改为>>就可以了。
[/Quote]

不是追加新数据,是只改这两行数据,别的行不动
missing77 2010-03-23
  • 打赏
  • 举报
回复
如果你的意思是在原有数据不动的情况下新加入数据,那就把程序中> 改为>>就可以了。
会飞的小洋洋 2010-03-23
  • 打赏
  • 举报
回复
up在线等

6,868

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧