2016-08-19 77 views
0

我在寫一個執行備份的批處理腳本。備份主機文件的批處理腳本

它需要使用以下條件複製「hosts」文件: 「如果系統」hosts「文件包含任何未註釋的條目,則將其複製」。

任何想法?

+1

歡迎來到SO。請確保您已閱讀[我如何提出一個好問題](http://stackoverflow.com/help/how-to-ask)。考慮到這一點,請包括你到目前爲止。 –

+0

好。你的*具體*問題是什麼?請記住,StackOverflow不是免費的編碼服務! – aschipfl

回答

0

作爲註釋行與此"#"字符串在主機上的文件開始,所以, 你應該使用Find /V "#"顯示不包含指定字符串"#"

如需更多幫助,有關Find /?

所有行你可以這樣做:

@echo off 
Rem Batch script to copy uncommented entries of your hosts file 
set "BackupHostsFile=%userprofile%\Desktop\BackupHostsFile.txt" 
If Exist "%BackupHostsFile%" Del "%BackupHostsFile%" 
set "hostspath=%windir%\System32\drivers\etc\hosts" 
Rem Find /V "#" : To display all lines NOT containing the specified string "#" 
for /f "delims=" %%a in ('Type "%hostspath%" ^| find /v "#"') Do (
    If Not %%a=="" echo %%a >> "%BackupHostsFile%" 
) 
Start "" "%BackupHostsFile%" 
+0

謝謝!我將在Windows更新後嘗試這種方式(; -_-) –