我正在使用Jenkins Pipeline插件来执行iOS Checkout-Build-Test-Deploy管道。
一步涉及检查iDevice是否实际连接(否则其余步骤将不会执行)。
我想执行一个shell命令idevice_id -l
(来自libimobiledevice),它将打印出所连接设备的设备ID,如果没有连接则会失败。
所以我设想的步骤是:
sh "/usr/local/bin/idevice_id -l"
我已经阅读了大部分官方文档,但画了一个空白。如何解析sh
步骤的输出?
如果我以错误的方式接近这一点,欢迎任何其他建议。
答案 0 :(得分:35)
如this answer中所述,从 Pipeline: Nodes and Processes 版本2.4开始,您可以使用:
def out = sh script: '/usr/local/bin/idevice_id -l', returnStdout: true
答案 1 :(得分:3)