2013-08-28 86 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

相關問題