有没有办法在 Windows 上使用多个 hosts 文件?

有没有办法在 Windows 上使用多个 hosts 文件?

问题

有没有办法在 windows(7) 上使用多个 hosts 文件?
最好不要安装任何外部程序。


例子

说我的hosts文件里面有

10.2.3.4 bob.com
10.2.3.5 jim.com

我还想给你另一个文件,其中hosts2.txt包含

10.2.3.4 mark.com

Windows 有没有什么办法可以读取这两个文件并使用?

我之所以要这样做,而不只是在普通主机文件中添加更多内容,是因为我正在创建一个脚本,该脚本依赖于特定 IP 转到特定域。这将由多个用户使用,所以我希望我可以在共享目录中创建一个文件,该文件可以读取,也可以读取用户自己的主机文件。这意味着如果将来地址发生变化,只需要更改一个文件,而不是每个用户的主机文件,并且允许在用户不知情的情况下进行透明更改。


想法

也许有一个注册表或者某些包含 hosts 文件名称的东西?


需要更多信息请告诉我,我会添加。

答案1

我不确定是否可以更改 Windows 中的 hosts 文件位置。这篇文章中的信息似乎支持这一点:

https://support.microsoft.com/en-us/kb/172218/en-us

其中非常具体地讨论了 hosts 文件的位置,但并未提及可以使用多个文件。遗憾的是,Windows 7 似乎没有相应的文档。

DNS

您描述的情况确实需要本地 DNS 服务器。如果已经有一个,您可以安排将主机名添加到那里,以便所有本地计算机都使用该主机的特定地址。

脚本化更改

或者,由于您已经在使用某种形式的脚本,因此您可能能够以编程方式更改每台本地计算机上的 hosts 文件。这可以使用 powershell 或(可能更困难)通过标准 Windows 批处理脚本来实现。以下是示例 powershell 脚本:

https://gist.github.com/markembling/173887

假设您拥有适当的权限,您应该能够远程在多台机器上运行此脚本以推送更改。

相关内容