2013-08-28 51 views
0

我阅读了这个主题First step这是有用的开始。我可以在我的主机文件中添加几行。Windows批处理添加/替换主机文件中的条目

我现在试图搜索并用正则表达式替换字符串,但没有成功。例如,如果我的主机文件包含“SOMEIP website.com”,我想修改此行以获得“NEWIP website.com”。

我可以找到如果一行包含“website.com”,我目前不知道(如果可能)如何获得该行并通过正则表达式模式替换IP地址。

%windir%\system32\FIND /C /I "website.com" %hostpath% >nul 

IF %ERRORLEVEL% NEQ 0 ECHO %NEWLINE%^%server% website.com>>%hostpath% 

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

+0

HOSTS需要管理员权限才能更改,因此您需要使用提升的权限运行批处理文件。 – foxidrive

+0

我会看看'takeown'和'grant'来看看它是否有帮助。谢谢你的iead。 – user2381807

回答

0

例如与sed for Windows

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

相关问题