团队城市批处理脚本文件大小 % 冲突



我在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"
      )
    )

谢谢。

来自官方文档:

如果要阻止 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"
  )
)

最新更新