| 
 
xg911335 
初级用户
 
  
 
  
  
积分 134 
发帖 50 
注册 2006-3-28 
状态 离线
 | 
『楼 主』:
 关于排列问题,请指教?
 
使用 LLM 解释/回答一下
  
192.168.1.107 00-15-f2-9a-23-a7 
192.168.1.108 00-15-f2-49-f9-dd 
 
排列后的结果 
192.168.1.107 0015-f29a-23a7 
192.168.1.108 0015-f249-f9dd 
 
如何实现? 
 
    
 
  
 |   
 | 
  2007-8-28 22:18 | 
  
 | 
 | 
 
slore 
铂金会员
 
       
 
  
  
积分 5212 
发帖 2478 
注册 2007-2-8 
状态 离线
 | 
 | 
  2007-8-28 22:21 | 
  
 | 
 | 
 
xg911335 
初级用户
 
  
 
  
  
积分 134 
发帖 50 
注册 2006-3-28 
状态 离线
 | 
 | 
  2007-8-28 22:59 | 
  
 | 
 | 
 
slore 
铂金会员
 
       
 
  
  
积分 5212 
发帖 2478 
注册 2007-2-8 
状态 离线
 | 
『第 4 楼』:
 
 
使用 LLM 解释/回答一下
  
还不明白啊…… 
 
for /f "tokens=1,2,3,4,5,6 delims=-" %%a in ("192.168.1.107 00-15-f2-9a-23-a7") do ( 
echo %%a%%b-%%c%%d-%%e%%f 
) 
pause 
 
    
 
  
 |   
 | 
  2007-8-28 23:09 | 
  
 | 
 | 
 
jzl168 
初级用户
 
  
 
  
  
积分 38 
发帖 14 
注册 2006-8-16 
状态 离线
 | 
『第 5 楼』:
 
 
使用 LLM 解释/回答一下
  
for /f "tokens=1,2,3,4,5,6 delims=-" %%a in ("192.168.1.107 00-15-f2-9a-23-a7") do ( 
echo %%a%%b-%%c%%d-%%e%%f 
) 
pause  
 
slore兄 
为什么这段 do  ( 
echo %%a%%b-%%c%%d-%%e%%f 
) 
还要加()  看不出来,想问一下为什么要加,起的做用是什么? 
 
    
 
  
 |   
 | 
  2007-8-29 01:00 | 
  
 | 
 | 
 
xg911335 
初级用户
 
  
 
  
  
积分 134 
发帖 50 
注册 2006-3-28 
状态 离线
 | 
『第 6 楼』:
 
 
使用 LLM 解释/回答一下
  
很感谢。 
 
如果我的文本(1.txt)如下: 
192.168.0.21 00-18-f3-1b-69-cb 
192.168.0.204 00-02-b3-4c-b4-89 
192.168.0.205 00-13-20-4b-5c-3a 
192.168.0.253 00-07-e9-0a-bc-56 
192.168.0.254 00-3c-01-50-59-e4 
 
 
如何排列成???? 
192.168.0.21 0018-f31b-69cb 
192.168.0.204 0002-b34c-b489 
192.168.0.205 0013-204b-5c3a 
192.168.0.253 0007-e90a-bc56 
192.168.0.254 003c-0150-59e4 
 
这样写为什么不行啊? 
@for /f "tokens=1,2,3,4,5,6,7 delims=-" %%a in ("1.txt") do ( 
@echo %%a%%b%%c-%%d%%e-%%f%%g 
) 
@pause  
 
 
另外我试了一下 
@for /f "tokens=1,2,3,4,5,6,7 delims=-" %%a in ("192.168.0.21 00-18-f3-1b-69-cb") do ( 
@echo %%a%%b-%%c%%d-%%e%%f%%g 
) 
@pause  
执行结果怎么变成“192.168.0.21 0018f3-1b69-cb”。MAC排列不对? 
 
 Last edited by xg911335 on 2007-8-29 at 04:06 AM ] 
 
    
 
  
 |   
 | 
  2007-8-29 02:55 | 
  
 | 
 | 
 
xg911335 
初级用户
 
  
 
  
  
积分 134 
发帖 50 
注册 2006-3-28 
状态 离线
 | 
『第 7 楼』:
 
 
使用 LLM 解释/回答一下
  
知道问题了?原来("1.txt")多了个符号. 
 
但是MAC怎么排列不对呢? 
C:\Documents and Settings\xg\桌面>() 
192.168.0.204 0002b3-4cb4-89 
 
 Last edited by xg911335 on 2007-8-29 at 04:06 AM ] 
 
    
 
  
 |   
 | 
  2007-8-29 04:05 | 
  
 | 
 | 
 
knoppix7 
银牌会员
 
     
 
  
  
积分 1287 
发帖 634 
注册 2007-5-2 来自 cmd.exe 
状态 离线
 | 
 | 
  2007-8-29 07:50 | 
  
 | 
 | 
 
ccwan 
金牌会员
 
      
 
  
 
积分 2725 
发帖 1160 
注册 2006-9-23 来自 河北廊坊 
状态 离线
 | 
 | 
  2007-8-29 08:49 | 
  
 | 
 | 
 
slore 
铂金会员
 
       
 
  
  
积分 5212 
发帖 2478 
注册 2007-2-8 
状态 离线
 | 
『第 10 楼』:
 
 
使用 LLM 解释/回答一下
  
Originally posted by jzl168 at 2007-8-29 01:00: 
for /f "tokens=1,2,3,4,5,6 delims=-" %%a in ("192.168.1.107 00-15-f2-9a-23-a7") do ( 
echo %%a%%b-%%c%%d-%%e%%f 
) 
pause  
 
slore兄 
为什么这段 do  ( 
echo %%a%%b-%%c%%d ...  
写成一行的话不用加 
这里加是让pause在循环外……(当然这里只有一个数据无所谓了)
  
另外我试了一下 
@for /f "tokens=1,2,3,4,5,6,7 delims=-" %%a in ("192.168.0.21 00-18-f3-1b-69-cb") do ( 
@echo %%a%%b-%%c%%d-%%e%%f%%g 
) 
@pause  
执行结果怎么变成“192.168.0.21 0018f3-1b69-cb”。MAC排列不对? 
 
理论上应该对的,我测试也对的……不过不知道你为什么要加7加%%g 
(即使加了应该不影响结果,至少我这里是的。) 
 
Originally posted by knoppix7 at 2007-8-29 07:50: 
4楼有各错误。。。 
貌似应该是 
@echo %%a%%b-%%c%%d-%%e%%f%%g   
 
为什么要这样?%%g为何物? 
 
Originally posted by ccwan at 2007-8-29 08:49: 
干嘛你哦弄那么复杂?   
 
哦?ccwan兄有什么简单的呢? 
我觉得我的是最简单的了=.=
 
  
 
    
 
  
 |   
 | 
  2007-8-29 08:53 | 
  
 | 
 | 
 
ccwan 
金牌会员
 
      
 
  
 
积分 2725 
发帖 1160 
注册 2006-9-23 来自 河北廊坊 
状态 离线
 | 
『第 11 楼』:
 
 
使用 LLM 解释/回答一下
  
re slore 
我是说楼主的 
 
    
 
  
  |  
                  
  
                    三人行,必有吾师焉。   学然后知不足,教然后知困,然后能自强也。 |   
 | 
  2007-8-29 09:01 | 
  
 |