2012-12-26 48 views
1

我想使用批處理腳本來自動化一些我會給客戶的工作。我想給他們一個INI文件WITH評論(讓他們明白他們的設置)。批處理文件加載ini文件與評論

實例INI:

[General] 
;Set your operating system 
OS=Windows7 

Read ini from windows batch file是一個好的開始,但不評論幫助。

在此先感謝。

+0

所以你想要的是在你提供的忽略評論的鏈接的答案中列出的代碼? – itdoesntwork

+0

查看Rob van der Woude上的這個例子:http://www.robvanderwoude.com/sourcecode.php?src=readini_nt –

+0

@ itdoesntwork我認爲這將是一個很好的基礎,但不是我最終想要的。因爲我想把變量設置爲它的值,所以我可以使用它。 –

回答

0

FOR語句具有EOL選項,該選項指定一個字符,該字符指示如果該行出現在行的第一個位置上,則該行將被忽略。默認EOL字符是;,所以您不必執行任何特殊操作即可忽略以;開頭的行。

您的要求不是很清楚。我不確定你想用[General]這樣的標籤來做什麼(如果有的話)。我會忽略他們。

您可以使用FIND或FINDSTR過濾掉任何不包含=的行。

這是一個簡單的腳本,它將載入由.ini文件定義的變量。以;開頭的行是註釋。節頭被忽略。

@echo off 
for /f "delims=" %%A in ('findstr = example.ini') do %%A 
+0

部分標籤將用於組織,不需要。但是,這確實會創建除註釋之外的其他標記類型。 –

+0

如果註釋中包含「=」,可能會中斷,但不確定 – itdoesntwork

+0

@itdoesntwork - 否,FOR語句將忽略所有註釋行(以';'開頭的行),而不管內容。但是它可能會錯誤地加載包含'='的部分標籤。例如,'[this = is loaded]'。 FINDSTR可以定製以防止這種情況。 – dbenham