Как разбить многострочную команду оболочки в конвейере Jenkins? - PullRequest
0 голосов
/ 26 апреля 2019

Я выполняю следующую команду в своем конвейере Jenkins и получаю следующий ответ

$ aws s3 ls s3://my.bucket.com --recursive
2018-11-21 12:50:21        124 404.json
2018-11-13 08:34:57          0 i18n/8ac2db8f3f0cef55013f0f5c45115ec2/
2018-11-15 03:09:38         85 i18n/8ac2db8f3f0cef55013f0f5c45115ec2/en_US.json
2018-11-29 08:34:44        106 i18n/8ac2db8f3f0cef55013f0f5c45115ec2/ru.json
2018-11-13 08:34:36          0 i18n/99d43531cf924378a36f2da9d4e9de0a/
2019-04-01 09:47:36        929 i18n/99d43531cf924378a36f2da9d4e9de0a/en_US.json

Как получить каждую строку, чтобы в конечном итоге я мог получить файл из каждой строки, которую я пробовал

    def files = sh(script: "aws s3 ls s3://my.bucket.com --recursive",
                   returnStdout: true).split('/n')
    println files.size()

но это не дает мне строк, потому что я получаю размер файла = 1 вместо 6 (шесть строк)

Спасибо.

1 Ответ

1 голос
/ 26 апреля 2019

Это делает трюк

def files = sh(script: "aws s3 ls s3://my.bucket.com --recursive",
               returnStdout: true).readLines()
...