0

我读了这个主题第一步,这对开始很有用。我可以在我的主机文件中添加几行。

我现在正在尝试用正则表达式搜索和替换字符串,但没有成功。例如,如果我的主机文件包含“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% 

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

4

2 回答 2

0

请参阅https://stackoverflow.com/a/16735079/891976以获取支持正则表达式搜索和替换的 dbenham 的 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

于 2013-08-28T13:56:24.403 回答
0

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

于 2013-08-28T14:13:34.787 回答