2013-02-07 124 views
1

我想知道是否有人知道如何編寫批處理腳本來編輯.cs文件中的某些文本。 我想要做的是改變「AssemblyVersion(」1.0.0.0「)」「AssemblyVersion(」1.0.0.x「)」,其中每次在jenkins中構建作業時x ++。 最好的問候Jan編寫批處理腳本來編輯.cs文件中的文本

+0

我假設你在windows上運行jenkins。我不是100%肯定的,但我敢打賭,你可以用PowerShell來做到這一點。 – Augusto

+0

有比'cmd'更好的工具,看看這個答案:http://stackoverflow.com/a/3517135/34148 –

+0

問題是,一切都建立在一個Windows服務器,作爲哈德遜奴隸。哈德森另一方面是一個Linux服務器。 試圖直接在hudson上構建所有東西(使用msbuild插件),並且除了完全爲空的assemblyfileinfo.cs文件外,它工作正常。我想這是因爲我必須在哈德森上安裝MSBuildTasks,並且我還沒有爲該atm提供解決方案。 – Jan

回答

0

遠離「批處理文件自動化」 - 只會導致你的悲傷。
(爲首發,不同版本的Windows支持一組不同的批處理命令)

應該合併腳本集結號作爲環境變量 -
兼用的「內置「%BUILD_NUMBER%參數或設置您自己的格式
Formatted Version-Number Plugin

如果你需要編輯「CS」的文件,我建議使用兩種Perl的PowerShell的

乾杯

1

你希望只使用一個批處理腳本此?你也可以使用執行Groovy腳本選項,並寫一些簡單的Groovy腳本來實現這一

file = new File("folder/path/myfile.cs") 
fileText = file.text; 
fileText = fileText.replaceAll(srcExp, replaceText); 
file.write(fileText); 

您也可以使用速效環境變量從詹金斯的工作來構建你的替換文本。這些變量將出現在/env-vars.html

+0

我如何迭代jenkins變量來替換它們中的每個文件中的值? – Dejell