如何解決jenkins 執(zhí)行shell腳本 sh: ... not found的問題
jenkins 執(zhí)行shell腳本 sh: ... not found
最近在玩jenkins的時候出現(xiàn)了以下問題,兩次遇到這種問題,所以記錄一下

這是因為沒有帶上系統(tǒng)的環(huán)境變量。
只有在 shell中第一行加上這句話:#!/bin/bash -ilex

Jenkins執(zhí)行腳本文件
Jenkins執(zhí)行腳本文件如下(startup.sh):
#!/bin/bash
#這里可替換為你自己的執(zhí)行程序,其他代碼無需更改
export JAVA_HOME=/usr/src/java/jdk1.8.0_201
APP_NAME=school-rest-1.0.0-SNAPSHOT.jar
FULL_PATH=/usr/data/school-rest/school-rest-1.0.0-SNAPSHOT.jar
#啟動方法
start(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`
if [ "$pid" ]; then
echo "$APP_NAME is already running. pid=$pid ."
else
nohup $JAVA_HOME/bin/java -jar $FULL_PATH --spring.profiles.active=dev >> catalina.out 2>&1 &
echo $!
echo "$APP_NAME now is running"
fi
}
#停止方法
stop(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`
if [ "$pid" ]; then
kill -9 $pid
echo "Pid:$pid stopped"
else
echo "$APP_NAME is not running"
fi
}
#輸出運(yùn)行狀態(tài)
status(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`
if [ "$pid" ]; then
echo "$APP_NAME is running. Pid is ${pid}"
else
echo "$APP_NAME is NOT running."
fi
}
#根據(jù)輸入?yún)?shù),選擇執(zhí)行對應(yīng)方法,不輸入則執(zhí)行使用說明
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
stop
sleep 5
start
;;
*)
echo "Usage:{start|stop|status|restart}"
;;
esac
exit 0只需要在jenkins指定執(zhí)行文件即可:

總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
linux每天定時備份數(shù)據(jù)庫并刪除十天前數(shù)據(jù)詳細(xì)步驟
每天定時備份數(shù)據(jù)庫需要用到Linux的定時任務(wù),利用Linux的crondtab 命令。下面通過本文給大家?guī)砹薼inux每天定時備份數(shù)據(jù)庫并刪除十天前數(shù)據(jù)詳細(xì)步驟,感興趣的朋友一起看看吧2018-06-06
Linux Shell中的特殊符號和含義簡明總結(jié)(包含了絕大部份)
這篇文章主要介紹了Linux Shell中的特殊符號和含義簡明總結(jié),本文匯總了包含了絕大部份的Shell特殊符號,對每一個符號的作用做了總結(jié),需要的朋友可以參考下2014-06-06
shell腳本中執(zhí)行時提示“沒有那個文件或目錄”的解決辦法
故障現(xiàn)象:在終端直接cd /var正常,在shell腳本中執(zhí)行則報錯。原因是腳本是在windows平臺下寫的,換行符與linux不同,造成腳本不能正確執(zhí)行2014-04-04
crontab實現(xiàn)每隔多少天執(zhí)行一次腳本的兩種方法
相信大家在工作中,經(jīng)常會遇到定時執(zhí)行腳本的功能要求,或某個命令的情況。那么下面這篇文章主要給大家介紹了關(guān)于crontab實現(xiàn)每隔多少天執(zhí)行一次腳本的相關(guān)資料,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-08-08

