无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5103|回复: 4
打印 上一主题 下一主题

如何批处理修改hosts 文件中的ip ,

[复制链接]
跳转到指定楼层
1#
发表于 2012-1-9 15:03:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
c:\bat\netlink\hosts   hosts文件里面有个ip130.1.1.121 ,现在在就在某种情况下需要将Ip 改为130.1.1.122 。批处理该怎么写,这两个ip 要互相改,就是130.1.1.121不能用时候就改为122,反之。有没高手知道如何写这个批处理。。多谢,我的理解是判断ip为121时候就改为122,122时候就改为121,但不知如何实现

[ 本帖最后由 2011xilou 于 2012-2-20 12:00 编辑 ]
2#
发表于 2012-1-9 22:15:48 | 只看该作者
看不懂。。。。。。
正常情况下,hosts文件在%windir%\system32\drivers\etc下。
把hosts内容贴出来,要求说清楚。。。。
回复

使用道具 举报

3#
 楼主| 发表于 2012-1-10 08:08:54 | 只看该作者
路径没关系。主要是修改里面的ip ,有时候telnet 不上服务器,能ping 通。改下hosts 文件ip 就可以了。手动修改太麻烦。每次这样很烦。所以就两个ip 切换使用。这个不行换那个。
回复

使用道具 举报

4#
发表于 2012-1-10 14:45:07 | 只看该作者
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set ph=%windir%\system32\drivers\etc&set phn=!ph!\hosts
  4. type !phn! |findstr "\<130.1.1.121\>">nul
  5. if %errorlevel%==0 set "addr1=130.1.1.121"&set "addr2=130.1.1.122"
  6. type !phn! |findstr "\<130.1.1.122\>">nul
  7. if %errorlevel%==0 set "addr1=130.1.1.122"&set "addr2=130.1.1.121"
  8. if not defined addr1 (echo IP不对&pause&goto :eof) else echo 现IP地址为!addr1! 按任意键改为!addr2!&pause>nul
  9. (for /f "delims=" %%a in ('type !phn!') do (
  10. set aa=%%a & set aa=!aa:%addr1%=%addr2%!
  11. echo !aa!
  12. ))>!ph!\hosts.tmp
  13. del !phn!>nul&ren !ph!\hosts.tmp hosts>nul&pause
复制代码


%ph%改成你自定义的实际路径,试试
回复

使用道具 举报

5#
 楼主| 发表于 2012-1-11 08:38:57 | 只看该作者
嘿嘿。可以呀。。多谢呀。我就是寻找那字符串,判断不好弄。。水平不够。。研究下。无忧高人还是多呀

[ 本帖最后由 2011xilou 于 2012-1-11 09:11 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-24 20:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表