shell 啟動執行springboot專案 判斷專案是否成功啟動執行
阿新 • • 發佈:2019-01-06
java -jar your-app.jar
這是一般springboot專案的命令列啟動,然後是持續的輸出一些日誌資訊,
最後一行會有個Started。。。的資訊
java -jar your-app.jar --logging.file=path/name.log
上面是自定義log日誌目錄,是springboot支援的命令列引數
【原理】判斷springboot是否啟動成功,用shell迴圈判斷輸出日誌,有無Started的資訊
#!/bin/bash
echo "start script ................"
java -jar /path/your-app.jar >/path/name.log &
today=`date +%Y-%m-%d`
hour=`date +%H`
while [ -f /path/name.log ]
do
echo "find log ........."
result=`grep "$today $hour" /path/name.log | grep "Started"`
if [[ "$result" != "" ]]
then
echo "springboot start ........."
break
else
echo "running ......."
sleep 1s
fi
done
echo "springboot Started..........."
指令碼主要是迴圈判斷日誌檔案
找出符合條件(當日當時,【誇小時可能bug】,主要是考慮如果有以前的日誌)的行來表明執行成功
java -jar 後面的 > &表示輸出轉存到檔案後,這條命令後臺執行,沒有&,下面的輸出會看不到