我對此很陌生,所以請耐心等待。基於IP的'主機'文件
我想寫一個批處理文件,可以替換etc/hosts文件,這取決於我登錄時所處的VLAN。 ie:當我登錄時,我得到了xxx。 xxx.102.xxx本地IP,我想使用hosts1文件。當我登錄時,我有xxx.xxx.103.xxx本地IP,我想使用hosts2文件。
因此,基本上基於ipconfig的輸出,掃描它爲「102」和「103」,並且當輸出中的數字時,它可以替換Windows目錄中的hosts文件。
想法?
我對此很陌生,所以請耐心等待。基於IP的'主機'文件
我想寫一個批處理文件,可以替換etc/hosts文件,這取決於我登錄時所處的VLAN。 ie:當我登錄時,我得到了xxx。 xxx.102.xxx本地IP,我想使用hosts1文件。當我登錄時,我有xxx.xxx.103.xxx本地IP,我想使用hosts2文件。
因此,基本上基於ipconfig的輸出,掃描它爲「102」和「103」,並且當輸出中的數字時,它可以替換Windows目錄中的hosts文件。
想法?
for %%a in (102 102 103) do (
ipconfig | find "xxx.xxx.%%a.xxx" >nul 2>&1 && copy /y hosts%%a "%SystemRoot%\system32\drivers\etc\hosts"
)
會工作,如果你有管理員權限和你的主機文件anemd hosts101 hosts102 ...
你可以試試這個。我在這裏使用findstr
的正則表達式功能:
ipconfig | findstr /er "[0-9][0-9]*.[0-9][0-9]*.102.[0-9][0-9]*" && copy hosts1 "%windir%\system32\drivers\etc\hosts"
ipconfig | findstr /er "[0-9][0-9]*.[0-9][0-9]*.103.[0-9][0-9]*" && copy hosts2 "%windir%\system32\drivers\etc\hosts"
你不能只在你的MAC地址分配一個靜態本地IP在路由器配置? – Ivan0x32