|
tagaye
初级用户
 
积分 32
发帖 11
注册 2008-4-26
状态 离线
|
『楼 主』:
如何更改文本指定行内容
有很多机器
想更改c:\netconfig\cfg 文件
内容大至为
第一行 注释
第二行 指定IP地址 (各机相同)
第三个 各电脑的定义内容(各机不同)
所以不能用copy 来覆盖原文件
现在要更改 第二行的 指定ip 要怎么来做批处理
|
|
2008-5-18 13:36 |
|
|
huahua0919
银牌会员
    
积分 1608
发帖 780
注册 2007-10-7
状态 离线
|
『第
2 楼』:
论坛这方面的内容很多,多搜索一下就有了
如果需要改的文件为 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
)
|
|
2008-5-18 14:18 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
3 楼』:
修改前:
注释
127.0.0.1
各电脑的定义内容(各机不同)
修改后:
注释
2.2.2.2
各电脑的定义内容(各机不同)
@echo off
change a.txt /from 127.0.0.1 /to 2.2.2.2
|

 |
|
2008-5-18 15:59 |
|
|
tagaye
初级用户
 
积分 32
发帖 11
注册 2008-4-26
状态 离线
|
『第
4 楼』:
谢谢 你的比较简单易懂 可是运行有错误
'change' 不是内部或外部命令,也不是可运行的程序或批处理文件。
|
|
2008-5-18 16:04 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
|
2008-5-18 16:05 |
|
|
tagaye
初级用户
 
积分 32
发帖 11
注册 2008-4-26
状态 离线
|
|
2008-5-18 16:10 |
|
|
tagaye
初级用户
 
积分 32
发帖 11
注册 2008-4-26
状态 离线
|
『第
7 楼』:
change 把所有行里有该IP的都换了
而我只要改指定的第二行IP就行
恐怕这个命令方式不行 不过还是谢谢
|
|
2008-5-18 16:26 |
|
|
HAT
版主
       
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
8 楼』:
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
|

 |
|
2008-5-18 16:34 |
|