一、本地项目上传到服务器
#!/bin/bash
declare -A modules=()
modules["1"]=/drives/d/data/workspace/back_endPro/zq.evaluate/api/target/api-1.0-SNAPSHOT.jar
modules["2"]=/drives/d/data/workspace/back_endPro/practice/zq.nuxt
MODULE_CHOICE(){
echo "*************** 选择本机上传项目 ****************"
echo "*************************************************"
echo " [1] -> :zq.evaluate"
echo " [2] -> :zq.nuxt"
echo " [0] -> :退出脚本"
echo "*************************************************"
echo "*************************************************"
echo "输入模块数字:"
}
while true
do
MODULE_CHOICE
read choice
if [ "$choice" = "1" ]||[ "$choice" = "2" ]; then
#自行修改IP及上传位置
scp ${modules["$choice"]} root@100.100.100.100:/usr/local/evaluate
echo "scp finish"
#上传成功后启动服务器中的脚本
ssh root@100.100.100.100 source /usr/local/evaluate/package.sh
else
exit 0
fi
done
二、服务器中备份项目及启停
#!/bin/bash
base_dir=$(dirname $0)
date=`date +'%Y%m%d%H%M%S'`
file="/usr/local/evaluate/api-1.0-SNAPSHOT.jar"
log="/usr/local/evaluate/log/nohup.out"
declare -A modules=()
modules["1"]=/usr/local/evaluate/zq.evaluate
modules["2"]=zq.nuxt
MODULE_CHOICE(){
echo "***************** 操作模块选择 ******************"
echo "*************************************************"
echo " [1] -> :zq.evaluate"
echo " [2] -> :zq.nuxt"
echo " [0] -> :退出脚本"
echo "*************************************************"
echo "*************************************************"
echo "输入模块数字:"
}
while true
do
MODULE_CHOICE
read choice
if [ "$choice" = "1" ]; then
pid=`ps -ef|grep ${modules["$choice"]}.jar|grep -v grep|awk '{print $2}' `
if [ -n "${pid}" ]; then
echo "进程存在,kill进程"
kill -9 $pid
fi
if [ -f "$file" ]; then
echo "项目存在,重命名"
mv ${modules["$choice"]}.jar ${modules["$choice"]}${date}.jar
mv "$file" ${modules["$choice"]}.jar
fi
echo "启动项目"
nohup java -Dfile.encoding=utf-8 -Dyml.active=prod -jar ${modules["$choice"]}.jar --spring.profiles.active=prod > "$log" 2>&1 & tail -f "$log"
#nohup java -Dfile.encoding=utf-8 -Dyml.active=prod -jar ${modules["$choice"]}.jar --spring.profiles.active=prod > /dev/null 2>&1 & tail -f log/nohup.out
elif [ "$choice" = "0" ];then
exit 0
else
exit
fi
done