我有一個Ant文件,其中包含我的TeamCity配置使用的目標。我對這個定義的目標使用replaceregexp:使用包含引號和等號的字符串從TeamCity調用Ant ReplaceRegexp
<replaceregexp file="${targetfile}" match="${originalstring}" replace="${updatedstring}" byline="true" />
我需要替換我的TargetFile已經包括了一組雙引號的字符串;具體而言,我需要更換minlevel =「跟蹤」與minlevel =「警告」。在TeamCity的我稱之爲Antfile有以下幾點:
-Doriginalstring = =的MinLevel 「跟蹤」 -Dupdatedstring = =的MinLevel 「警告」
卻忽略了雙引號。 我確定有一個我不理解的轉義字符的組合。 從TeamCity中調用此方法的正確方法是什麼? 謝謝,
謝謝,這完全符合我的需要。 現在我有第二個相關的問題。我需要更新的另一個字符串有一個嵌入空間: '-Doriginalstring = minlevel =「Trace」db =「M1Auth」 -Dupdatedstring = minlevel =「Warn」db =「M1Auth」' 我試着用空格反斜槓,但它仍然被視爲兩個獨立的論點。有什麼建議麼? – TomT 2014-11-03 17:21:20
@TomT這是相同的想法(答案更新)。您需要將整個值(包括空格)包裹在外部引號內,當然也可以使用內部引號。 – manouti 2014-11-03 18:11:16
這就是我以前的想法和嘗試。然而,嵌入式空間正在被認爲是一個新的Ant目標被引用的跡象。 這是我的通過: '-Doriginalstring =「minlevel = \」Trace \「writeTo = \」AuthLogDb \「」-Dupdatedstring =「minlevel = \」Warn \「writeTo = \」AuthLogDb \「」' 這裏是TeamCity所說的: 'Target'writeTo =「AuthLogDb」「」在項目中不存在 我真的很感謝幫助! – TomT 2014-11-03 21:00:48