2016-02-11 81 views
10

我剛剛開始將我的Jenkins作業轉換爲新的Jenkins管道(工作流)工具,並且我無法使sh命令使用bash登錄shell。如何在jenkins管道(以前稱爲工作流)中啓動bash登錄shell?

我已經試過

sh ''' 
#!/bin/bash -l 
echo $0 
''' 

echo $0命令總是被在一個交互的shell,而不是一個bash登錄shell執行。

+6

她邦解決這個問題應該是在腳本的第一行: SH「」「#!/斌/慶典-l 回聲$ 0 ‘’」 – izzekil

+0

@ izzekil是正確的!啊。 – Jeff

回答

21

@izzekil是對的!非常感謝!

因此,要詳細闡述發生了什麼。我使用sh''',它表示一個多行腳本。但是,得到的轉到詹金斯節點的shell腳本將是一行,而不是第一行。所以,我能與這個

sh '''#!/bin/bash -l 
echo $0 
# more stuff I needed to do, 
# like use rvm, which doesn't work with shell, it needs bash. 
''' 
+0

你應該能夠擺脫sh'''(並結束''')。 – gaoithe

+0

@gaoithe,你能提供一個你的意思嗎? – Jeff

+0

只是在作業配置中有#!/ bin/bash作爲第一行。我試圖在答案編輯中更好地解釋。 – gaoithe

相關問題