![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-03 23:44 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » (已解决) 求助.3.29更新: 根据 主机名修改IP 的批处理 |
| 可打印版本 1,280 / 12 |
| 第1楼 jckjuc | 发表于 2007-03-26 14:58 |
| 初级用户 发帖 23 积分 48 | |
|
(已解决) 求助.3.29更新: 根据 主机名修改IP 的批处理 本人连续几天在各大网站和搜索下都没法得到答案。所以只有劳烦各位大侠帮
下小菜菜啦。 正题: :P 我想知道要怎样才能 根据预先设定的主机名 来更改IP? 比如我设定了 主机名是 001 的IP 是192.168.0.201 002 的IP 是192.168.0.202 如何实现??? 不好意思,本人表达能力不是很好。:( 简单的就是说我设定好 001=192.168.0.201 002=192.168.0.202 003=192.168.0.3 004=192.168.0.4 005=192.168.0.5 .................... ... 当我运行批处理文件后就会根据主机名而修改成对应的IP 关于 2 楼 everest79 大侠所写的好像不起作用。运行后一点改变都没有。 希望能说下使用方法。 而且网吧有500多台电脑,我要先把所有主机名和对应的IP的先写到批处理,等GHOST完后,运行批处理而根据主机名自动修改对应IP 而且 everest79 大侠的批处理也没有修改DNS 和备用DNS。 希望everest79 大侠和各位高手能不能再帮下忙? 下面附一个段修改主机名的批处理: 希望各位能接着下完成上面 根据主机名而修改成对应的IP 当我输入001 就要把IP修改成 192.168.0.201 当我输入003 就要把IP修改成 192.168.0.3 当我输入225 就要把IP修改成 192.168.1.25 (反正这个在批处理文档中先预设好了,到时根据主机名自动修改) 子掩码为 255.255.254.0 DNS均为 202.96.128.86 202.96.3128.166 特别注意:下面的批处理会自动在你输入的机号前加 “ gyq-“ @color c @cls :::清屏 @echo --------------------------------------------------- @set/p 机号= 请输入计算机号: @echo --------------------------------------------------- @echo Windows Registry Editor Version 5.00 >pc.reg @echo >>pc.reg ::::用变量""去替换实际的机器名 @echo "ComputerName"="gyq-%机号%" >>pc.reg @echo >>pc.reg ::::用变量"机号"去替换实际的机器名 @echo "NV Hostname"="gyq-%机号%" >>pc.reg @echo "Hostname"="gyq-%机号%" >>pc.reg regedit /s pc.reg del PC.reg [ Last edited by jckjuc on 2007-3-31 at 02:49 PM ] |
|
| 第2楼 everest79 | 发表于 2007-03-26 22:23 |
| 金牌会员 发帖 1,127 积分 2,564 | |
| 第3楼 jckjuc | 发表于 2007-03-27 14:30 |
| 初级用户 发帖 23 积分 48 | |
|
先谢谢。测试下。行了再来告诉大家。 谢了
|
|
| 第4楼 lxmxn | 发表于 2007-03-28 01:51 |
| 版主 发帖 4,938 积分 11,386 | |
|
先在单个主机上面执行netsh命令,看看有没有效果。 |
|
| 第5楼 jckjuc | 发表于 2007-03-28 01:54 |
| 初级用户 发帖 23 积分 48 | |
|
详细怎么操作啊?不是很懂。能否清晰点,最好是把批处理写出来。
或是有个仔细的思路说明。让我自己研究。先谢 |
|
| 第6楼 lxmxn | 发表于 2007-03-28 02:31 |
| 版主 发帖 4,938 积分 11,386 | |
|
先试试这个:netsh interface ip set address=<ip> mask=<smIP> |
|
| 第7楼 jckjuc | 发表于 2007-03-28 11:53 |
| 初级用户 发帖 23 积分 48 | |
|
还是不行。管理员和各位版主、高手能否再给多点提示?最好详细点的。
真的找了很长时间都找不到。才会麻烦大家的。谢了 |
|
| 第8楼 jckjuc | 发表于 2007-03-28 11:54 |
| 初级用户 发帖 23 积分 48 | |
|
可能大家还不是很明白我的表达意思。不好意思,本人表达能力一点都不好。
其实是很简单,就是有N台电脑,我先把 什么主机名对应什么IP 写好。 等到GHOST后 再改一下主机名,然后批处理就会根据主机名而查找出我预先写好在批处理中的对应IP 修改 [ Last edited by jckjuc on 2007-3-28 at 12:07 PM ] |
|
| 第9楼 chenall | 发表于 2007-03-28 15:09 |
| 银牌会员 发帖 469 积分 1,276 来自 福建泉州 | |
|
我来贴一个吧,请根据需要进行修改.
由于使用的中文的变量,所以应该很好理解. 当然为了兼容性,你可以自己修改为英文变量. 补一下,由于你没有提供网关,有可能是忘了.或者是不需要设定这个网关. 如果不需要只需将相应的行删除即可. 不设网关set 网关=XXX这一行和 "%网关% 1"字符可以删除
[ Last edited by chenall on 2007-3-28 at 03:12 PM ] |
|
| 第10楼 jckjuc | 发表于 2007-03-29 11:35 |
| 初级用户 发帖 23 积分 48 | |
|
谢谢 chenall兄弟, 先自己试下.不行再来麻烦大家 .... 谢谢
|
|
| 第11楼 jckjuc | 发表于 2007-03-30 03:01 |
| 初级用户 发帖 23 积分 48 | |
|
9楼的 chenall 大侠的帮助好像让我非常接近成功了.可就是看了很久,测试了也不少时间还是搞得不是很明白.
能否再一整段命令行都写出来看下. 就是我预先设置的IP应该在那里设置?第8行那句命令也搞不懂.(本人真的很菜) 好人就做底了吧.好吗? 呵呵...... 先谢 各位大侠也要帮下忙啊. 再谢下 |
|
| 第12楼 chenall | 发表于 2007-03-30 05:38 |
| 银牌会员 发帖 469 积分 1,276 来自 福建泉州 | |
|
能否再一整段命令行都写出来看下. 就是我预先设置的IP应该在那里设置?第8行那句命令也搞不懂.(本人真的很菜)
是指什么? 预先设置的IP应该放在另一个文件中.文件名可以自定. 比如文件名为 IPC.TXT 内容类似 001=192.168.0.201 002=192.168.0.202 003=192.168.0.3 004=192.168.0.4 005=192.168.0.5 只需更改第8行的"设定文件"为你的文件名即可,这里就改为 "IPC.TXT" 这个设定文件要和批处理放在同一个目录下. 关于第8行的简单解释. for /f "usebackq tokens=2 delims==" %%i in (`type 设定文件^|find /i "%computername:~-3%"`) do set 本机IP=%%i 从 设定文件 中查找计算机名的后3位.(也就是00X之类的)然后将查找到的内容以=分附隔的第二段的值设为变量 本机IP 比如计算机名为gyq-002 设定文件里面也有002=192.168.0.202 就是在设定文件里面找002,就找到这一行 002=192.168.0.202 以=分隔的第二段就是192.168.0.202 |
|
| 第13楼 jckjuc | 发表于 2007-03-31 14:51 |
| 初级用户 发帖 23 积分 48 | |
|
感谢 chenall兄弟的多次相助。 还有通过远程协助帮助解决问题。
感谢DOS联盟论坛里的成员。谢谢各位管理员和版主。 再次谢谢chenall |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |