楼 主
同样的命令在FOR语句为何无法执行?
发表于 2008-04-27 13:26 · 中国 河北 沧州 任丘市 华北油田网络
中级用户
★★
MS-DOS爱好者
积分 397
发帖 87
注册 2002-12-15 00:00
23年会员
UID 517
性别 男
状态 离线
请朋友们帮我看看以下的命令:
(1)、 nbtstat /a %computername%|find /i "MAC Address">mac2.txt
(2)、For /f "delims== tokens=3" %%m in ('nbtstat /a %computername%^|find /i "MAC Address"') do echo 本机网卡的MAC地址是:%%m>MAC3.txt
在批处理文件中直接用第一条代码后可以正常执行,但是将第一行的代码用到FOR语句中(见第二条)就不能执行,这是为什么?难道我这第二条代码写错了?请明白的朋友指点一下,我先谢谢了……
[ Last edited by sglxy on 2008-4-27 at 01:27 PM ]
第 2 楼
发表于 2008-04-27 13:30 · 中国 台湾 中华电信
初级用户
★
积分 107
发帖 42
注册 2007-09-03 16:43
18年会员
UID 96475
性别 男
状态 离线
For /f "delims=" %%m in ('nbtstat /a %computername%^|find /i "MAC Address"') do echo 本机网卡的MAC地址是:%%m>MAC3.txt
第 3 楼
发表于 2008-04-27 13:33 · 中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
18年会员
UID 103127
性别 男
状态 离线
MAC Address = **-**-**-**-**-**
tokens=2吧
山外有山,人外有人;低调做人,努力做事。
进入网盘(各种工具)~~
空间~~
cmd学习
第 4 楼
发表于 2008-04-27 13:44 · 中国 河北 沧州 任丘市 华北油田网络
中级用户
★★
MS-DOS爱好者
积分 397
发帖 87
注册 2002-12-15 00:00
23年会员
UID 517
性别 男
状态 离线
谢谢sylovanas朋友,我的意思是说'nbtstat /a %computername%^|find /i "MAC Address"'产生的结果,我只要后面的MAC:00-11-D6-D0-54-7F,而不要前面的内容:“ MAC Address = ”
第 5 楼
发表于 2008-04-27 13:50 · 中国 河北 沧州 任丘市 华北油田网络
中级用户
★★
MS-DOS爱好者
积分 397
发帖 87
注册 2002-12-15 00:00
23年会员
UID 517
性别 男
状态 离线
plp626朋友的“tokens=2”执行成功了,我不明白的是:“ MAC Address = 00-11-D6-D0-54-7F” 这个结果经过“delims==” 处理以后,“00-11-D6-D0-54-7F”字段难道不是应该为“tokens=3”吗?
第 6 楼
发表于 2008-04-27 13:57 · 中国 湖南 娄底 电信
银牌会员
★★★
积分 2,268
发帖 879
注册 2006-12-19 16:23
19年会员
UID 73968
性别 男
状态 离线
MAC Address = 00-11-D6-D0-54-7F
何来的 3 ?
致精致简!
第 7 楼
发表于 2008-04-27 13:58 · 中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
“delims==” 将“ MAC Address = 00-11-D6-D0-54-7F”分为“ MAC Address ”与“ 00-11-D6-D0-54-7F”,空格不参与分段
第 8 楼
发表于 2008-04-27 14:17 · 中国 河北 沧州 任丘市 华北油田网络
中级用户
★★
MS-DOS爱好者
积分 397
发帖 87
注册 2002-12-15 00:00
23年会员
UID 517
性别 男
状态 离线
论坛跳转: