中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 帮忙把2份P合成1份得到想要的格式?
作者:
标题: 帮忙把2份P合成1份得到想要的格式? 上一主题 | 下一主题
bbq123bbq
初级用户




积分 197
发帖 77
注册 2006-9-19
状态 离线
『楼 主』:  帮忙把2份P合成1份得到想要的格式?

arp.txt内容:
192.168.0.4 00:1C:F1:00:65:7F
     
192.168.0.238 00:1C:F1:00:68:84
      
192.168.0.42 00:1C:F1:00:69:54
      
192.168.0.41 00:1C:F1:00:97:80
      
192.168.0.22 00:1C:F1:00:68:80

要求输出格式:00-1C-F1-00-65-7F=192.168.0.4|s004
                     00-1C-F1-00-68-84=192.168.0.238|s238

的出代码有2份想合成一段输出成:00-1C-F1-00-65-7F=192.168.0.4|s004
1:
setlocal enabledelayedexpansion
for /f "tokens=1-2 delims= " %%a in (arp.txt) do (
set aa=%%b
set aa=!aa::=-!
set cc=
set "cc=!aa!=%%a|"
echo !cc!>>arp.ini
)
2:
setlocal enabledelayedexpansion
for /f "tokens=4 delims=.|" %%a in (arp.ini) do (
set aa=000
set bb=%%a
set cc=!aa!!bb!
echo s!cc:~-3!
)

2007-12-7 19:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 2 楼』:  

setlocal enabledelayedexpansion
for /f "tokens=1,2,3,4* delims=. " %%a in (arp.txt) do (
set aa=%%e
set aa=!aa::=-!
set bb=00%%d
set cc=%%a.%%b.%%c.%%d
echo !aa!=!cc!^|s!bb:~-3!>>arp.ini
)



简单!简单!再简单!
2007-12-7 19:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 3 楼』:  

命令行执行下面的Gawk命令:
gawk "$0!~/^ +$/{split($1,ip,/\./);printf(\"%s=%s.%s.%s.%s^|s%.3d\n\",$2,ip[1],ip[2],ip[3],ip[4],ip[4])}" arp.txt >newp.txt


2007-12-7 21:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: