![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-11 05:03 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 如何批量生成IP配置批处理并对应已有名单? |
| 可打印版本 989 / 9 |
| 第1楼 pkto | 发表于 2009-01-19 14:16 |
| 初级用户 发帖 62 积分 62 | |
|
如何批量生成IP配置批处理并对应已有名单? 求助,单位有100多台机子联网,为加强管理,不使用自动获取地址的方式,需要给每台机子单独配置IP,但每个人手工配置又太慢,因此想用批处理来生成一批配置bat,然后对应已有名单,分发给每个人,到时只要此人执行一下批处理,便可配置结束。由于网络定期会调整,因此用此方式效率能够提高很多。具体需求如下(环境为cmd):
1、IP的bat标准配置为: @ echo off netsh -c interface ip set address name="本地连接" source=static addr=192.168.1.xx mask=255.255.255.0 netsh -c interface ip set address name="本地连接" gateway=192.168.1.254 gwmetric=0 netsh -c interface ip set dns name="本地连接" source=static addr=218.2.135.1 register=PRIMARY 以上的红xx,便是2~253的地址。要求在批处理执行后,自动生成一批(共252个)分别是从2~253的配置批处理,即2.bat 3.bat 4.bat~253.bat,每一个批处理,都对应一个与以上例子格式相同的相应IP配置批处理。 2、有一个现成的单位人员名单name.txt,按列排列: 赵一 钱二 张三 李四 王五 …… 要求先前生成的IP配置批处理,能够遍历name.txt,然后按以上2.bat 3.bat 4.bat……依次以该名单的顺序,重新命名,生成2赵一.bat 3钱二.bat 4张三.bat……的IP配置批处理。 3、能否有一个转bat为exe(或com)的工具,通过批处理操作,批量将以上生成的IP配置批处理全部转化成可执行的文件? 谢谢各位版主和达人啦,帮偶个忙好不好?先提前给论坛里的朋友拜个早年啦!! 祝: 论坛青松永驻 版主事业兴旺 坛友心想事成 祖国繁荣昌盛 [ Last edited by pkto on 2009-1-19 at 23:05 ] |
|
| 第2楼 yishanju | 发表于 2009-01-19 14:57 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
你都知道设置设置IP用的命令了,代码完全可以自己写了,
用上FOR命令就是可以了。 |
|
| 第3楼 pkto | 发表于 2009-01-19 15:55 |
| 初级用户 发帖 62 积分 62 | |
Originally posted by yishanju at 2009-1-19 02:16 PM: 三个问题一并解决,偶哪有这个本事?偶也就是一菜鸟而已呀!而且是近40岁的老菜鸟…… [ Last edited by pkto on 2009-1-19 at 15:56 ] |
|
| 第4楼 dato | 发表于 2009-01-19 16:11 |
| 高级用户 发帖 377 积分 916 | |
|
用modiip搜索论坛modiip是个很不错的根据mac来修改IP设定的软件,
以前我也在这里求助过如何用批处理快速扫描当前网络设定并生成mac.ini http://www.cn-dos.net/forum/viewthread.php?tid=42427&page=1 |
|
| 第5楼 pkto | 发表于 2009-01-19 17:06 |
| 初级用户 发帖 62 积分 62 | |
Originally posted by dato at 2009-1-19 04:11 PM: |
|
| 第6楼 terse | 发表于 2009-01-19 17:49 |
| 银牌会员 发帖 946 积分 2,404 | |
| 第7楼 pkto | 发表于 2009-01-19 22:43 |
| 初级用户 发帖 62 积分 62 | |
|
谢谢terse老大的代码,但是最后形成的文件却是 赵一2.txt钱二3.txt ,而不是需要的 2赵一.bat 3钱二.bat(当然扩展名不是问题,只要把>>%%i!n!.txt改成>>%%i!n!.bat即可),……
因此,偶重新调整了一下terse老大的代码: @echo off&setlocal enabledelayedexpansion set n=1 for /f "delims=" %%i in (name.txt) do ( set/a n+=1 (echo @ echo off echo netsh -c interface ip set address name="本地连接" source=static addr=192.168.1.!n! mask=255.255.255.0 echo netsh -c interface ip set address name="本地连接" gateway=192.168.1.254 gwmetric=0 echo netsh -c interface ip set dns name="本地连接" source=static addr=218.2.135.1 register=PRIMARY )>> !n!%%i.bat ) pause 这样就实现了偶第一、第二两个需要。 但是,还有第三个问题,能否有一个转bat为exe(或com)的工具,通过批处理操作,批量将以上生成的IP配置批处理全部转化成可执行的文件? 例如老K大大的批处理潜行者V6.0,能否实现批量转换批处理?且通过cmd命令实现 [ Last edited by pkto on 2009-1-20 at 00:20 ] |
|
| 第8楼 yishanju | 发表于 2009-01-20 11:25 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
试试不就知道了
|
|
| 第9楼 pkto | 发表于 2009-01-20 13:15 |
| 初级用户 发帖 62 积分 62 | |
Originally posted by yishanju at 2009-1-20 11:25 AM: 兄台,虽然感谢您回贴,但是也请在回贴的内容里加上些营养好不好?说实话,你的回贴,偶没有获得半点益处,哪怕是心情上的愉悦——纯粹是不疼不痒的水贴啊!还有,既然偶提出来要求,那必然是各方面都已经试过的,并且有疑问的……怀疑兄台的高级用户的积分,是灌水灌出来的…… [ Last edited by pkto on 2009-1-20 at 13:17 ] |
|
| 第10楼 yishanju | 发表于 2009-01-20 14:10 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
果然是高手,居然知道我是灌水混来的
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |