使用批处理bat更改hosts的多个方法

什么是Hosts:

  Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。

Hosts文件的具体作用:

  现在来看一下Hosts文件的工作方式以及它在具体使用中起哪些作用。
  1、加快域名解析
  对于要经常访问的网站,我们可以通过在Hosts中配置域名和IP的映射关系,提高域名解析速度。由于有了映射关系,当我们输入域名计算机就能很快解析出IP,而不用请求网络上的DNS服务器。
  2、方便局域网用户
  在很多单位的局域网中,会有服务器提供给用户使用。但由于局域网中一般很少架设DNS服务器,访问这些服务器时,要输入难记的IP地址。这对不少人来说相当麻烦。现在可以分别给这些服务器取个容易记住的名字,然后在Hosts中建立IP映射,这样以后访问的时候,只要输入这个服务器的名字就行了。
  3、屏蔽网站
  现在有很多网站不经过用户同意就将各种各样的插件安装到你的计算机中,其中有些说不定就是木马或病毒。对于这些网站我们可以利用Hosts把该网站的域名映射到错误的IP或本地计算机的IP,这样就不用访问了。在WINDOWS系统中,约定127.0.0.1为本地计算机的IP地址, 0.0.0.0是错误的IP地址。

用bat更改hosts文件批处理

@echo off
echo "请注意你的杀毒软件提示,一定要允许"
@echo  ########################################
@xcopy C:\Windows\system32\drivers\etc\hosts C:\Windows\system32\drivers\etc\hosts.bak\ /d /c /i /y
@echo  ########################################
@echo  hosts文件备份完毕,开始修改hosts文件
@echo
@echo 117.79.149.116 search.b2b.cn >>C:\Windows\System32\drivers\etc\hosts
@echo 117.79.149.116 news.search.b2b.cn >>C:\Windows\System32\drivers\etc\hosts
echo   "hosts文件修改完成"
@ipconfig /flushdns
@echo   "刷新DNS完成"

echo  hosts文件修改完毕,按任意键恢复系统原始状态
@echo
@echo  ########################################
@pause > nul
@copy C:\Windows\System32\drivers\etc\hosts.bak\hosts C:\Windows\System32\drivers\etc\hosts /y
@echo
@echo off
echo  hosts文件恢复完毕,按任意键退出
@echo
@pause > nul
@exit

搭建本地的测试环境:

@echo off
echo 搭建本地测试环境
echo.
c:
cd \
if not exist lmhy-test\con md lmhy-test
if exist lmhy-test\hosts.bak goto backup_exists
echo 正在创建备份……
cd \windows\system32\drivers\etc
copy /y hosts \lmhy-test\hosts.bak > null
echo 完成!
echo.
goto backup_start
:backup_exists
echo 备份文件已经存在,无需备份。
echo.
:backup_start
echo 正在写入测试数据……
echo 127.0.0.1    localhost > hosts
echo 192.168.1.170  lmhy.com >> hosts
echo 192.168.3.170  www.lmhy.com >> hosts
echo 192.168.3.170  php.lmhy.com >> hosts
echo 192.168.3.170  test.lmhy.com >> hosts
echo 完成!
echo.
echo 建立 lmhy 本地测试环境完成。按任意键退出……
pause > null

卸载本地测试环境:

@echo off
echo 卸载本地测试环境
echo.
c:
cd \
if not exist lmhy-test\hosts.bak goto backup_not_exists
echo 正在还原备份……
copy /y \lmhy-test\hosts.bak \windows\system32\drivers\etc > null
cd \windows\system32\drivers\etc
if exist hosts del /q hosts
ren hosts.bak hosts
echo 完成!
echo.
echo 正在移除备份……
cd \
rmdir /s/q \lmhy-test\
echo 完成!
echo.
goto backup_done
:backup_not_exists
echo 备份文件不存在,无法恢复。

(注意:安装了360的可能在运行修改时会出现警告框,点击运行就可以了)

(0)

相关推荐

  • 使用批处理删除HOSTS中特定内容的行的代码

    Q:用bat批处理来删除或者修改hosts中指定的条目,例如对于127.0.0.1 localhosts,能否把hosts里面带有local的记录全都删掉或者改掉? A: 复制代码 代码如下: cd /d %windir%\system32\drivers\etc  rem 先删除hosts.bak防止重命名失败  del hosts.bak  ren hosts hosts.bak  for /f "eol=# tokens=1,2" %%i in (hosts.bak) do ca

  • 批处理添加多个新的域名到hosts

    要求:批处理(.bat) 添加多个新的域名到hosts,先检测是否已存在,如果已存在的域名就不添加 其他尚未存在的域名,则直接添加 google搜寻是有找到代码  如下: 复制代码 代码如下: set stHosts= X.X.X.X www.domainname.com FOR /F "eol=# tokens=1 delims=" %%i in (%systemroot%\system32\drivers\etc\hosts) do if "%stHosts%"

  • 批处理利用HOSTS文件(屏蔽,加速)网站的代码

    复制代码 代码如下: @echo off&setlocal&cls echo/&echo\&echo=&echo]&echo[&echo+ :start set/p a=选择模式(1:屏蔽网站 2:加速访问 3:删除被屏蔽的网站 4:退出): if not defined a goto start if %a% equ 1 (echo/&goto a) if %a% equ 2 (echo/&goto b) if %a% equ 3

  • 使用批处理bat更改hosts的多个方法

    什么是Hosts: Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联"数据库",当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析. Hosts文件的具体作用: 现在来看一下Hosts文件的工作方式以及它在具体使用中起哪些作用. 1.加快域名解析 对于要经常访问的网

  • Windows下批处理(BAT)修改文件名的一些整理

    目录 批处理删除文件名中的一些字 批量更改文件名神器 批量去除文件名前缀 批量修改补充 批处理删除文件名中的一些字 @echo off setlocal enabledelayedexpansion set /p str=请输入要删除的字符(回车确认): for /f "delims=" %%a in ('dir /a-d/b *') do ( set new=%%~a ren "!new!" "!new:%str%=!") echo 字符&qu

  • 通过批处理bat设置系统环境变量的实现代码

    在软件运行过程中,可能需要配置计算机的环境变量,在这里分为两种情况: 一:增加或修改环境变量只在当前软件环境中使用 如我们设置Java的环境变量: set CLASSPATH=%CLASSPATH%;C:\LS\JAVA.JAR 保持原有的不变  自己加上要加的jar包,用分号隔开,当然你也可以写到前面,如:set CLASSPATH=D:/My_Path;%CLASSPATH% set JAVA_HOME=  这里的路径自己写吧 不过这样写只对你打开的这个dos窗口有效,也就是你只有在这个窗口

  • PHP实现更改hosts文件的方法示例

    本文实例讲述了PHP实现更改hosts文件的方法.分享给大家供大家参考,具体如下: 有这样一个需求,我有多个网址希望在不同的时候对应不同的 ip,如果一个个配 hosts,这工作显得有些繁琐.写了如下脚本来批量更改. <?php define('HOST_FILE', 'C:\Windows\System32\drivers\etc\hosts'); $hm = new HostManage(HOST_FILE); $env = $argv[1]; if (empty($env)) { $hm-

  • Python批处理更改文件名os.rename的方法

    在工作中,我们经常会遇到需要对大批量文件进行重命名的操作,而python提供了很简单的方法: import os #top是目标文件夹(绝对路径),os.walk会读取其内的文件及文件夹直至空. for a,b,c in os.walk(top='dir'): n = len(c) #对文件大小进行过滤 if n >= 10: for i in range(n): #根据命名规则进行匹配分割,eg: 4399_0_1234_60.jpg name = c[i].split('_',1)[1] #

  • 让bat批处理以管理员权限运行的实现方法

    1.第一种方法 有的电脑是非管理员登录,运行程序时,需要提示是否运行运行.解决方法如下: @ echo off %1 %2 ver|find "5.">nul&&goto :Admin mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :Admin","","runas&quo

  • 自动以管理员身份运行批处理bat文件(vbs与bat两种方法)

    但是,批处理脚本不会默认已管理员身份运行,一般情况下,我会将脚本命名为"XXXXXX(请右键点击,用管理员身份运行!).bat",但总有些用户会忽略这条提示,直接运行,此时由于权限不足,导致脚本运行失败. 我们可以使用一种变通的方法,让bat启动时,首先调用vbs脚本,通过vbs脚本,以管理员身份调用该bat的 runas 部分 我们的脚本可以写在runas 下,这样就点击该bat脚本,就可以已管理员身份运行了 示例代码如下 @ECHO OFF setlocal EnableDelay

  • windows 批处理bat连接本地mysql 创建制定数据 并执行sql文件

    实例代码 @echo off set path=C:\Program Files\MySQL\MySQL Server 5.7\bin cd ./ set CURR_PATH=%cd% mysql -h localhost -u root --password=123456 < operate.txt mysql -h localhost -u root -p stcounter < stcounter.sql --password=123456 @echo off:关闭回显  不出现在doc

  • 批处理bat将txt文本第一列内容相同的行的最后一列的数字相加

    小弟不材,想了好几天没写出来,才来论坛求助,希望各位高手帮帮忙解下题 ,在此先谢谢各位了- 比如,aaa.txt 内容如下 11111,20150430,10 11111,20150430,20 11111,20150430,30 22222,20150430,40 33333,20150430,50 44444,20150430,60 44444,20150430,70 55555,20150430,80 66666,20150430,90 66666,20150430,100 77777,2

  • 批处理bat函数:大数字加减乘除、时期时间计算、数字排序、进制转换等

    目录 计算任意位数的正整数加法 计算1000位以内的正整数减法 计算任意位数的正整数乘法 500位内整数除法函数 计算时间差 可以处理0开头的数.重复数及200位以内的超大整数(封装) 计算指定天数 前/后 的日期及星期 进制转换(函数) 1.任意进制互转 二进制转十六进制(封装)(通过4位一段转换,可处理超大数) 十六进制转二进制(封装)(通过4位一段转换,可处理超大数) 二进制转十进制(封装)(只能处理cmd范围内的数,小巧方便代码中调用) 获取10进制数(含负数)的 原码.反码.补码(未封

随机推荐