在jenkins的构建步骤之间传递执行shell数据

时间:2019-10-02 13:09:10

标签: bash shell jenkins

jenkins中有2个不同的执行外壳,需要将一个变量传递给另一个

下面的代码显示了我尝试过的内容

Shell脚本#1

export storedBanner=$(curl http://my.network:8080/boardmessage | jq -r .[0].message|sed 's/<[^>]*>//g') 

echo $storedBanner > ~/stored.txt

curl -i -X POST -H "Content-Type: application/json" -d "{\"message\":\"<h3>Test message<h3>\"}" http://my.network:8080/boardmessage

Shell脚本#2

export storedBanner= $(cat ~/stored.txt)

curl -X POST -H "Content-Type: application/json" -d "{\"message\":\"<h4>${storedBanner}<h4>\"}" http://my.network:8080/boardmessage

我希望存储导出的消息并将其传递给第二个shell脚本,但这似乎不起作用。

2 个答案:

答案 0 :(得分:0)

您可以使用全局变量来做到这一点

答案 1 :(得分:0)

感谢您的帮助,我在文件中找到了答案,结果发现我使用了错误的语法

将其放置在#2的shell脚本中有效:)

    storedBanner=$(<banner.txt)