2017-06-20 39 views
0

,我有以下爲在TeamCity的構建步驟自定義腳本:TeamCity的批處理腳本文件大小%衝突

for %%A in (*.err) do (
    if not %~zA==0 (
    echo."%%A" contains errors. 
    set "retval=1" 
) 
) 

TeamCity的日誌,「一個是在這個時候意外」的抱怨。有誰知道周圍的工作可能是什麼?


解決方案結束了:

for %%%%A in (*.err) do (
     if not %%%%~zA==0 (
     echo."%%%%A" contains errors. 
     set "retval=1" 
    ) 
    ) 

感謝。

回答

1

official documentation

如果你想阻止的TeamCity從百分比治療文本 跡象參考屬性,你可以通過使用兩個 百分號轉義。在 屬性引用被支持的值中,每次出現「%%」將在 將值傳遞到構建之前被替換爲「%」。例如如果要將 「%Y%m%d%H%M%S」傳遞到構建中,請將其更改爲「%% Y %% m %% d %% H %% M %% S」

所以,你的代碼看起來像:

for %%%%A in (*.err) do (
    if not %%%%~zA==0 (
    echo."%%%%A" contains errors. 
    set "retval=1" 
) 
) 
+0

是的,我知道的雙重%%的日益%,而不是被像TC參數處理。但是,即使在第二行有兩%%,它也表示相同的錯誤。這在TC以外很好。 –

+0

您是否已將雙'%%'轉換爲季''%%%%'? – grundic

+1

解決方案是所有需要4%的線路。感謝您的建議。 –