无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3408|回复: 3
打印 上一主题 下一主题

批处理Findstr命令求助

[复制链接]
跳转到指定楼层
1#
发表于 2012-7-15 09:56:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
由于公司现在要大批量升级系统,基于某种原因,计算机名和IP都不能变。现在我已经拿到了要升级的电脑的MAC地址、IP地址和计算机名并按这个结构保存在1.txt文件中。每部分用一个空格分开。现在有一个问题。假设有一台计算机MAC地址为00-01-02-03-04-05那么如何获取这个MAC地址所在的行是第几行并把行号写入一个变量中。求大大帮帮忙,不胜感激
2#
发表于 2012-7-15 10:46:06 | 只看该作者
原帖由 2012luo 于 2012-7-15 09:56 发表
由于公司现在要大批量升级系统,基于某种原因,计算机名和IP都不能变。现在我已经拿到了要升级的电脑的MAC地址、IP地址和计算机名并按这个结构保存在1.txt文件中。每部分用一个空格分开。现在有一个问题。假设有 ...


你可以到DOS联盟求助啊
回复

使用道具 举报

3#
发表于 2012-7-15 22:36:08 | 只看该作者
rem 核心部分
for /f "tokens=1-3 delims= " %%i in ('type "1.txt" ^| findstr /i "00-01-02-03-04-05"') do (
    rem 将MAC地址赋值给变量MACAddress
    set MACAddress=%%i
    rem 将IP地址赋值给变量IPAddress
    set IPAddress=%%j
    rem 将计算机名赋值给变量ComputerName
    set ComputerName=%%k
)

例如1.txt内容如下:
-------------------------------------------------------------
MAC地址             IP地址          计算机名
00-01-23-45-67-89   192.168.1.100   test
00-1E-90-69-8B-E3   192.168.1.101   admin
00-01-02-03-04-05   192.168.1.111   Administrator
00-D1-0E-33-B2-33   192.168.1.255   Name
-------------------------------------------------------------

较完整bat文件,添加到附件里了...
另外,LZ可详细参看vkill编写的CMD脚本"根据mac地址自动修改ip地址、网关、dns、计算机名、工作组等"(2008.07.09最后更新)

test.zip

390 Bytes, 下载次数: 27, 下载积分: 无忧币 -2

从文件中获取 MAC、IP、计算机名...

回复

使用道具 举报

4#
发表于 2012-7-15 22:56:15 | 只看该作者
原帖由 <i>2012-Cool</i> 于 2012-7-15 22:36 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2528795&ptid=254946" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />
rem 核心部分<br />
for /f "tokens=1-3 delims= " %%i in ('type "1.txt" ^| findstr /i "00-01-02-03-04-05"') do (<br />
    rem 将MAC地址赋值给变量MACAddress<br />
    set MACAddress=%%i<br />
    rem 将IP地址赋值给变量 ...
<br />

万分抱歉,没看清LZ是需要“行号”,那应该这样写了(需要find命令)
for /f "tokens=1 delims=[]" %%i in ('find /n /i "00-01-02-03-04-05" "1.txt"') do set Row=%%i

多次回帖,不好意思,呵呵
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-6-1 08:57

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表