批处理修改hosts文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批处理修改hosts文件相关的知识,希望对你有一定的参考价值。

我们公司内部的一个软件,在登陆的时候需要在HOSTS里有一个地址指向,比如:192.168.1.1 XXserver
而现在360安全卫士,和360杀毒都把当成病毒和恶意插件处理了,处理方式是在原地址前加了一个#,使语句失去了指向的意义,软件在登陆时就无法找到服务器!
高手们帮我一下,就是当360卫士处理时候,把192.168.1.1前有#的,自动删去换成空格或. 其他内容不变.

# Copyright (c) 1993-1999 Microsoft Corp.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

127.0.0.1 localhost
192.168.1.1 XXXserver

不知道我说明白了没有,大家能看得懂吧...高手们过来看看..

@ECHO OFF
SET IP=192.168.1.1
SET server=XXXserver
SET HOST="%WinDir%\system32\drivers\etc\hosts"
FINDSTR /V "%IP%" %HOST%>YOU_YOU
ECHO %IP% %server%>>YOU_YOU
MOVE /Y YOU_YOU %HOST%
REM 此行及下行可删除
START NOTEPAD %HOST%

新建批处理文件,把上述内容复制即可(思路是先删除包含你指定IP的所有行,然后在最后一行添加即可)。
参考技术A 这个呢,你写个批处理。

@echo off
rem 写入Host
echo 192.168.1.1 XXserver >>C:\WINDOWS\system32\drivers\etc\hosts
rem 开启程序
start "软件名称" "软件地址"
exit

用这个打开软件就行了,它会在打开程序前,添加一条host定向。
让360信任这个批处理就行了。
参考技术B @echo off
echo 192.168.1.1 XXserver
>>C:\WINDOWS\system32\drivers\etc\hosts

新建记事本,键入上面内容,然后另存为bat格式 #号就不要管他了。直接加一行一样效果本回答被提问者和网友采纳
参考技术C @echo off
set stHosts=192.168.1.1 XXserver
FOR /F "eol=# tokens=1 delims=" %%i in (%SystemRoot%\system32\drivers\etc\hosts) do if "%stHosts%"=="%%i" goto end
echo %stHosts%>> %SystemRoot%\system32\drivers\etc\hosts

:end
参考技术D 为什么要批处理hosts文件?
搞个DNS服务器不行吗

以上是关于批处理修改hosts文件的主要内容,如果未能解决你的问题,请参考以下文章

批处理修改HOSTS文件

修改hosts文件的.bat批处理文件解释

用批处理修改HOSTS文件。

关于HOSTS修改的批处理的问题。

科研工具最新最方便的Google host修改工具

如何用批处理,写入hosts文件