这两天闲着没事,装了一个Jenkins在我那台服务器上,正好能够部署我放在GitHub上的项目,不用自己手动去导包之类的了。
说来也惭愧啊,搞了半天,我的shell脚本本来写在了这里:
然后各种权限问题,索性就在写个脚本,就能完美解决了。
脚本代码:
#!/bin/bash
#杀死之前的进程
input1=niuren.jar
logDate=$(date "+%Y年-%m月-%d日%H:%M:%S")
PID=$(ps -ef | grep $input1 | grep -v grep | awk '{print $2}')
if ps -p $PID > /dev/null
then
echo "结束进程$PID"
sudo kill $PID
# Do something knowing the pid exists, i.e. the process with $PID is running
fi
echo $PID
echo "清除原项目"
#创建日志
touch /data/javaproject/logs/$logDate.txt
rm -rf /data/javaproject/niuren.jar
cp /var/lib/jenkins/workspace/NiuRenSec/target/niuren.jar /data/javaproject/
nohup java -jar /data/javaproject/niuren.jar -> /data/javaproject/logs/$logDate.txt 2>&1 &
echo "启动成功"