Windows批处理在主机文件中添加/replace条目

我读了这个主题第一步是有用的开始。 我可以添加几行到我的主机文件。

我正在尝试,没有成功,search和正则expression式replacestring。 例如,如果我的主机文件包含“SOMEIP website.com”,我想修改这一行以获得“NEWIP website.com”。

我可以find如果一行包含“website.com”,我目前不知道(如果可能)如何获得该行,并通过正则expression式模式replaceIP地址。

%windir%\system32\FIND /C /I "website.com" %hostpath% >nul IF %ERRORLEVEL% NEQ 0 ECHO %NEWLINE%^%server% website.com>>%hostpath% 

我迷路了,所以谢谢你的回答:)

Solutions Collecting From Web of "Windows批处理在主机文件中添加/replace条目"

有关支持正则表达式搜索和替换的dbenham,请参阅https://stackoverflow.com/a/16735079/891976的repl.bat。

 type "HOSTS" | repl "\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b website.com" "NEWIP website.com" m >"HOSTS.new" move /y HOSTS.new HOSTS 

Repl.bat: http : //www.dostips.com/forum/viewtopic.php? f =3& t = 3855

用于Windows的sed示例:

 sed -ri.bak "s/(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9]) website.com/NewIP website.com/ig" hosts 

sed制作备份副本hosts.bak