通过批处理文件更新Windows中的hosts文件会造成危害吗?

通过批处理文件更新Windows中的hosts文件会造成危害吗?

我有这个脚本,并已将其保存为.bat文件。它会损坏计算机吗?

echo # >> %Windir%\System32\drivers\etc\hosts
echo 0.0.0.0    www.facebook.com >> %Windir%\System32\drivers\etc\hosts

我只是想知道这是否会对计算机产生任何副作用,例如损坏某些东西?我认为这是不可能的。它所做的只是通过更改主机文件让 Facebook 显示 DNS 错误。

答案1

我通常看到人们使用 localhost 而不是 0.0.0.0。我不知道这是什么原因;但这应该不是什么大问题。

除此之外,这个脚本完全没问题。请注意,运行此脚本后您将无法使用 Facebook,但我认为这就是您想要实现的目标。

答案2

它非常安全。如果您担心,唯一需要做的就是备份 %Windir%\System32\drivers\etc\hosts 文件,然后如果事情没有按预期进行,再恢复它。

您可能还想添加一行

回显“127.0.0.1 localhost”>>%Windir%\System32\drivers\etc\hosts

到文件底部,这样定义会比较好。

如果任何其他文件调整了你的“hosts”文件(例如“广告拦截器”,此脚本可能会恢复该更改)

答案3

只要 hosts 文件的最后一行已经终止,脚本就可以正常工作。

如果最后一行是(末尾没有换行符)

127.0.0.1    localhost

它将读

127.0.0.1    localhost#

之后。这只有在#是注释字符时才有效;任何其他字符都会破坏一些东西,但“损害”很容易逆转。

要在 hosts 文件末尾插入换行符,请执行

echo.>> %Windir%\System32\drivers\etc\hosts

在其他命令之前。

答案4

完全没有副作用。它只是将 Facebook 重定向到您的本地环回 0.0.0.0。这是让 Facebook DNS 出错的简单而有效的方法。

相关内容