我正在使用Jenkins Pipeline插件执行iOS Checkout-Build-Test-Deploy管道。
第一步涉及检查是否实际连接了iDevice(否则将不执行其余步骤)。
我想执行一个shell命令idevice_id -l(来自libimobiledevice),该命令将打印出所连接设备的设备ID,如果没有连接,则失败。
idevice_id -l
因此,我预想的步骤将是:
sh "/usr/local/bin/idevice_id -l"
我已经阅读了大多数官方文档,但留了空白。如何解析sh步骤的输出?如果我以错误的方式处理此问题,欢迎提出其他建议。
sh
正如mentionned 这个答案,从管道版本2.4 :节点和进程开始,可以使用:
def out = sh script: 'java -jar scalr-api.jar testing654 n1-standard-8', returnStdout: true
作为2.4版本的 管道:节点和进程,你可以使用:
def out = sh script: '/usr/local/bin/idevice_id -l', returnStdout: true