楼 主
如何更改文本指定行内容
发表于 2008-05-18 13:36 · 中国 浙江 绍兴 电信
初级用户
★
积分 32
发帖 11
注册 2008-04-26 10:03
18年会员
UID 116989
性别 男
状态 离线
有很多机器
想更改c:\netconfig\cfg 文件
内容大至为
第一行 注释
第二行 指定IP地址 (各机相同)
第三个 各电脑的定义内容(各机不同)
所以不能用copy 来覆盖原文件
现在要更改 第二行的 指定ip 要怎么来做批处理
第 2 楼
发表于 2008-05-18 14:18 · 中国 江苏 苏州 电信
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
论坛这方面的内容很多,多搜索一下就有了
如果需要改的文件为 cfg.inf
@echo off&setlocal enabledelayedexpansion
for /f "delims=: tokens=2" %%i in ('ipconfig/all ^|findstr/ivc:"ip address"') do set a=%%i&set ip=!a:~1!
for /f "delims=" %%i in (cfg.inf) do (
if !n! equ 0 (>cfg.inf echo %%i) else (if !n! equ 1 (>>cfg.inf echo %ip%) else (>>cfg.inf echo %%i))
set/a n+=1
)
第 3 楼
发表于 2008-05-18 15:59 · 中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
修改前:
注释
127.0.0.1
各电脑的定义内容(各机不同)
修改后:
注释
2.2.2.2
各电脑的定义内容(各机不同)
@echo off
change a.txt /from 127.0.0.1 /to 2.2.2.2
第 4 楼
发表于 2008-05-18 16:04 · 中国 浙江 绍兴 电信
初级用户
★
积分 32
发帖 11
注册 2008-04-26 10:03
18年会员
UID 116989
性别 男
状态 离线
谢谢 你的比较简单易懂 可是运行有错误
'change' 不是内部或外部命令,也不是可运行的程序或批处理文件。
第 5 楼
发表于 2008-05-18 16:05 · 中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
第 6 楼
发表于 2008-05-18 16:10 · 中国 浙江 绍兴 电信
初级用户
★
积分 32
发帖 11
注册 2008-04-26 10:03
18年会员
UID 116989
性别 男
状态 离线
第 7 楼
发表于 2008-05-18 16:26 · 中国 浙江 绍兴 电信
初级用户
★
积分 32
发帖 11
注册 2008-04-26 10:03
18年会员
UID 116989
性别 男
状态 离线
change 把所有行里有该IP的都换了
而我只要改指定的第二行IP就行
恐怕这个命令方式不行 不过还是谢谢
第 8 楼
发表于 2008-05-18 16:34 · 中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
Originally posted by tagaye at 2008-5-18 04:26 PM:
change 把所有行里有该IP的都换了
而我只要改指定的第二行IP就行
恐怕这个命令方式不行 不过还是谢谢
@echo off
change a.txt /from 127.0.0.1 /to 2.2.2.2 /lines 2-2
论坛跳转: