一個簡單的Linux啟動jar包的shell指令碼

紅影發表於2018-05-04

背景:

專案裝置端需要執行jar包程式與服務端進行socket連線併傳送資料,每次啟動程式時,都需要在Linux終端輸入啟動jar包的命令,比較繁瑣,隨之嘗試將啟動jar包的命令寫入shell指令碼檔案中,實現操作shell指令碼啟動jar包程式的功能。

編寫的socdev.sh指令碼檔案中命令如下:

 1 #啟動命令所在目錄
 2 HOME=`/home/pi/Desktop/java`
 3 
 4 #獲取mac地址(唯一的)
 5 mac=`ifconfig | grep eth0 | awk `{print $5}``
 6 
 7 start(){
 8     #進入命令所在目錄
 9     cd $HOME
10     nohup sudo java -jar ufoCatcher-catcher-1.0-SNAPSHOT.jar $mac wss://ip:port/catcher PULL_DOWN &
11 }
12 
13 stop(){
14     #kill 掉所有java程式
15     ps -ef | grep java | grep -v grep |awk `{print $2}` | xargs sudo kill -9
16 }
17 
18 case $1 in
19    start)
20       start
21    ;;
22    stop)
23       stop
24    ;;
25    restart)
26       $0 stop
27       sleep 2
28       $0 start
29     ;;
30    *)
31       echo "Usage: {start|stop|restart}"
32    ;;
33 esac
34 
35 exit 0

啟動jar包程式:./socdev.sh start

終止jar包程式:./socdev.sh stop

相關文章