当我访问经常访问的不同网络时,我正在使用一些自动化脚本来配置我的网络设置,主机文件内容和/ etc / resolver文件。
可能会发生一些组合,这些组合都需要更改hosts文件,并且我想避免设置不同组合的矩阵,从而在各处复制共享设置。
例如,我可能在工作网络上,即 在建筑物中,或者我可以通过VPN访问它。在这两种情况下,我都需要向主机文件添加一些设置以使网络正常工作,某些设置是共享的,有些则没有。此外,如果我是通过VPN,我可能是在家里,在这种情况下,有在主机其他一些设置文件我也想补充。
因此,我希望不要为“家庭,通过VPN访问工作”和“家庭,不访问工作”等创建一个文件,而是可以让我包含其他文件?
例如,假设以下假设语法有效:
#!include home.hosts
#!include work.hosts
127.0.0.1 localhost
::1 localhost
这样,我可以简单地清除这两个额外文件中一个或两个的内容,而保留其余内容。
或者,除此以外,还有一种更好的方法,不仅仅是构建一个将诸如此类文件的文件串联到一个新的主机文件中的小脚本,并且作为我的自动化设置的一部分,我首先清除了其中一些额外的文件,然后我调用脚本从那些额外的文件中重建单个主机文件?
dscl
命令,因此也必须对此进行研究。
dscl
直接更改主机条目吗?