获取Jenkins中批处理文件的返回
我有一个简单的批处理文件返回文件数。我调用它并试图从Jenkins那里得到返回值。然而,这并不像预期的那样。。。 我的批处理文件:获取Jenkins中批处理文件的返回,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,我有一个简单的批处理文件返回文件数。我调用它并试图从Jenkins那里得到返回值。然而,这并不像预期的那样。。。 我的批处理文件: @echo off set count = 0 for /f %%A in ('dir C:\Temp\AutoTestWorkspace\BAT\ ^|find "File(s)"') do set count=%%A echo %count% 我的詹金斯密码: def total_files = bat ( script: 'D:\\CICD\\MamaBat
@echo off
set count = 0
for /f %%A in ('dir C:\Temp\AutoTestWorkspace\BAT\ ^|find "File(s)"') do set count=%%A
echo %count%
我的詹金斯密码:
def total_files = bat ( script: 'D:\\CICD\\MamaBatScript.bat', returnStdout: true)
echo "Total Files is " + total_files
输出:
Total Files is
C:\Temp\Jenkins\workspace\AutomationTesting\DispatchTests@2>D:\CICD\MamaBatScript.bat
2
我只想得到数字……另外,你能告诉我为什么输出是这样奇怪吗……你应该去掉第一行输出
def stdout = bat(returnStdout: true , script: 'D:\\CICD\\MamaBatScript.bat').trim()
def total_files = stdout.readLines().drop(1).join(" ")
我在使用readLines时遇到以下错误。。。顺便问一下,你知道上面输出的原因吗脚本不允许使用staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods readLines java.lang.String。管理员可以决定是否批准或拒绝此签名。`goto“Manage Jenkins”->“进程中脚本批准”并批准脚本。