问题
有没有办法在 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
假设您拥有适当的权限,您应该能够远程在多台机器上运行此脚本以推送更改。