在Jenkins的Execute shell命令选项中,我正在尝试执行 xcodebuild -scheme“我的项目”测试| xcpretty --report junit --output report.xml
但是当Jenkins执行它时,看起来它不能识别管道字符,它将它作为下一行或其他东西。
我尝试过的事情 - 将命令放在.sh文件中 - 转义管道角色 - 使用Eval
他们都没有工作
我暂时不想使用Xcode插件。
任何使其有效的提示?
答案 0 :(得分:0)
尝试将#/!/bin/bash
放在命令行代码的顶部。
编辑:如果它不是管道,那么你可能需要获取第一个命令的输出并将其包装起来,以便一次性发送它......我可能写错了。
OUT="$(xcodebuild -scheme "My project" test)"
echo $OUT | xcpretty --report junit --output report.xml
答案 1 :(得分:0)
看起来就像将其视为换行符,因为两个命令实际上是同时执行的;它们不是顺序执行。参见What is a simple explanation for how pipes work in Bash?