中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求根据计算机名称修改网关的批处理做法?谢谢
作者:
标题: 求根据计算机名称修改网关的批处理做法?谢谢 上一主题 | 下一主题
bingobe
新手上路





积分 14
发帖 6
注册 2008-9-23
状态 离线
『楼 主』:  求根据计算机名称修改网关的批处理做法?谢谢

如题现有39台电脑,计算机名称分别是1-39,没有前后缀,单数字 网关有192.168.1.252---254,共3个,每13台一个网关 由于是无盘,分别设置网关比较麻烦,想请高手帮忙做个批处理,根据计算机名来自动修改网关 谢谢了,急 我就写了两条,写不下去了, ipconfig /all >ip.txt for /f "delims=" %%a in ('findstr "Host Name" ipconfig.txt') do echo %%a>>NAME.txt 把计算机名那行提取出来了,还想把计算机名单独提出来,然后以计算机名来排不足多少的用多少网关,老搞不好, 最后想用IF命令加后面这条来实现自动切换网关 netsh interface ip set address name="本地连接" source=static gateway=*.*.*.* gwmetric=1 谢谢了 [ Last edited by bingobe on 2008-9-23 at 07:54 AM ]


2008-9-23 07:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dato
高级用户




积分 916
发帖 377
注册 2004-3-8
状态 离线
『第 2 楼』:  

你可以看看这个帖子 大家能帮我完善一下扫描局域网mac地址并转换成modiip www.cn-dos.net/forum ... 偶现在的作法是母盘用DHCP获得IP,ghost完毕先用DHCP分配IP,再用psexec执行modiip来自动设定IP。modiip用来自动修改IP非常不错的




2008-9-23 09:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ceii
初级用户





积分 115
发帖 45
注册 2007-3-3
状态 离线
『第 3 楼』:  

读取计算机名可以直接运行 hostname.exe


2008-9-23 09:42
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 4 楼』:  

@echo off
for /f "tokens=16 delims= " %%a in ('ipconfig /all^|findstr /c:"Host Name"') do (
  if %%a leq 13 (
    echo 计算机名称1-13
  ) else if %%a leq 26 (
    echo 计算机名称14-26
  ) else (
    echo 计算机名称27-39
  )
)
自动切换网关自己能搞定不?




2008-9-23 09:46
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bingobe
新手上路





积分 14
发帖 6
注册 2008-9-23
状态 离线
『第 5 楼』:  

我这里是无盘 用的BXP 有盘我可以搞定 无盘才接触的 问题是BXP无盘只能用一个网关 我的意思是进系统后自动执行开机批处理,根据机器号来修改网关,不需要人工干预 楼上的大哥能不能把后面的步骤也写一下呢? 感激不尽


2008-9-23 10:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bingobe
新手上路





积分 14
发帖 6
注册 2008-9-23
状态 离线
『第 6 楼』:  

帮忙看下好么,谢谢了


2008-9-23 10:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bingobe
新手上路





积分 14
发帖 6
注册 2008-9-23
状态 离线
『第 7 楼』:  

最好哪位大哥能帮我做个完整版的出来就好了 进系统后扫描自己计算机名,然后根据名字改网关 1-13号机器用1.252 14-26用1.253 27-39用1.254 谢谢各位高手同志了,救救我吧,阿门


2008-9-23 10:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bingobe
新手上路





积分 14
发帖 6
注册 2008-9-23
状态 离线
『第 8 楼』:  

另外,默认的是1.252,1-13号可以不改


2008-9-23 10:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ceii
初级用户





积分 115
发帖 45
注册 2007-3-3
状态 离线
『第 9 楼』:  

运行 hostname.exe 并将结果赋值到 aaa set wangguan=252 如果 aaa>=14 set wangguan=253 如果 aaa>=27 set wangguan=254 最后将 %wangguan% 加到 netsh 命令中 [ Last edited by ceii on 2008-9-23 at 11:15 AM ]


2008-9-23 10:56
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bingobe
新手上路





积分 14
发帖 6
注册 2008-9-23
状态 离线
『第 10 楼』:  

谢谢了,我试一下看看吧


2008-9-23 11:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 11 楼』:  

@echo off
for /f "tokens=16 delims= " %%a in ('ipconfig /all^|findstr /c:"Host Name"') do (
  if %%a leq 13 (
    netsh interface ip set address name="本地连接" source=static gateway=192.168.1.252 gwmetric=1
  ) else if %%a leq 26 (
    netsh interface ip set address name="本地连接" source=static gateway=192.168.1.253 gwmetric=1
  ) else (
    netsh interface ip set address name="本地连接" source=static gateway=192.168.1.254 gwmetric=1
  )
)




2008-9-23 11:01
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ceii
初级用户





积分 115
发帖 45
注册 2007-3-3
状态 离线
『第 12 楼』:  

@echo off for /f %%i in ('hostname') do set a=%%i set w=252 if %a% gtr 13 set w=253 if %a% gtr 26 set w=254 echo netsh i i s a "本地连接" s gateway=192.168.1.%w% gwmetric=1 [ Last edited by ceii on 2008-9-23 at 11:38 AM ]


   此帖被 +5 点积分      点击查看详情   
评分人:【 everest79 分数: +5  时间:2008-9-23 14:12


2008-9-23 11:26
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: