退回詹金斯中的批处理文件

时间:2019-12-02 03:54:29

标签: jenkins jenkins-pipeline

我有一个简单的批处理文件,返回文件数。我打电话给它,试图从詹金斯那里得到那个返回值。但是,这并不符合预期... 我的批处理文件:

@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

我只想获取数字...此外,您能告诉我为什么输出如此奇怪吗...

1 个答案:

答案 0 :(得分:0)

您应该删除输出的第一行。

def stdout = bat(returnStdout: true , script: 'D:\\CICD\\MamaBatScript.bat').trim()
def total_files = stdout.readLines().drop(1).join(" ")       
相关问题