TeamCity批处理脚本文件大小%冲突

时间:2017-06-20 17:14:55

标签: teamcity

我在TeamCity构建步骤中将以下内容作为自定义脚本:

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

TeamCity日志抱怨" A此时出乎意料。"。有谁知道这可能是什么工作?

解决方案最终成为:

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

感谢。

1 个答案:

答案 0 :(得分: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"
  )
)