#!/bin/bash
####################################
# TODO:优化听云解压路径
####################################
#用法
if [ $# -lt 2 ]; then
echo "Usage: ./ty_conf_autoch.sh srv_port nbs.app_name"
exit 0
fi
#判断听云是否已安装
TINGYUN_INSTALLED=`ps aux|grep tingyun-agent-java.jar|wc -l`
if [ $TINGYUN_INSTALLED -ge 2 ];then
echo "听云已安装!!!"
exit 0
fi
P_PID=$(netstat -anp|grep $1|head -1| awk -F '[ ]+' '{print $7}'| awk -F '/' '{print $1}')
SRV_PATH=$(pwdx $P_PID|awk -F '[ ]+' '{print $2}')"/"
echo "当前服务的路径为:"$SRV_PATH
#端口不存在处理
if [ $SRV_PATH = "/" ];then
echo "所提供的端口不存在"
exit 0
fi
QUERY_COUNT=`find $SRV_PATH -iname "startWebLogic.sh"|wc -l`
echo $QUERY_COUNT
DT=`date +%Y%m%d%H%M%S`
#判断是weblogic程序还是tomcat程序
if [ $QUERY_COUNT -ge 1 ];then
UNZIPRST=$(/usr/bin/unzip -o /home/osoper/tingyun.zip -d $SRV_PATH)
LLRST=$(ll $SRV_PATH)
#获取特定文件属主,处理属主
USER_OWNER=$(ls -ld ${SRV_PATH} | awk '{print $3":"$4}')
CHOWNRST=$(chown -R $USER_OWNER $SRV_PATH"tingyun")
CHMODRST=$(chmod +x -R ${SRV_PATH}"tingyun")
#备份需要修改的文件
$(cp -p ${SRV_PATH}tingyun/tingyun.properties ${SRV_PATH}tingyun/tingyun.properties${DT})
$(sed -i 's/nbs.host=10.131.41.18/nbs.host=10.131.88.110/g' $SRV_PATH"tingyun/tingyun.properties")
$(sed -i 's/nbs.port=80/nbs.port=20000/g' $SRV_PATH"tingyun/tingyun.properties")
$(sed -i "s/nbs.app_name=dljy_server/nbs.app_name=$2/g" ${SRV_PATH}"tingyun/tingyun.properties")
EXPORT_CONTENT='export JAVA_OPTIONS="$JAVA_OPTIONS -javaagent:'"${SRV_PATH}tingyun/tingyun-agent-java.jar\""
#备份需要修改的文件
$(cp -p ${SRV_PATH}bin/startWebLogic.sh ${SRV_PATH}bin/startWebLogic.sh${DT})
sed -i "/# START WEBLOGIC/a $EXPORT_CONTENT" ${SRV_PATH}bin/startWebLogic.sh
else
TY_PATH="/"
UNZIPRST=$(/usr/bin/unzip -o /home/osoper/tingyun.zip -d ${TY_PATH})
P_PID=$(netstat -anp|grep $1|head -1| awk -F '[ ]+' '{print $7}'| awk -F '/' '{print $1}')
SRV_PATH=$(pwdx $P_PID|awk -F '[ ]+' '{print $2}')"/"
echo $SRV_PATH
#获取特定文件属主,处理属主
USER_OWNER=$(ls -ld ${SRV_PATH} | awk '{print $3":"$4}')
CHOWNRST=$(chown -R $USER_OWNER $TY_PATH"tingyun")
CHMODRST=$(chmod +x -R ${TY_PATH}"tingyun")
#备份需要修改的文件
$(cp -p ${TY_PATH}tingyun/tingyun.properties ${TY_PATH}tingyun/tingyun.properties${DT})
$(sed -i 's/nbs.host=10.131.41.18/nbs.host=10.131.88.110/g' $TY_PATH"tingyun/tingyun.properties")
$(sed -i 's/nbs.port=80/nbs.port=20000/g' $TY_PATH"tingyun/tingyun.properties")
$(sed -i "s/nbs.app_name=dljy_server/nbs.app_name=$2/g" ${TY_PATH}"tingyun/tingyun.properties")
EXPORT_CONTENT='JAVA_OPTS="$JAVA_OPTS -javaagent:'"${TY_PATH}tingyun/tingyun-agent-java.jar\""
#备份需要修改的文件
$(cp -p ${SRV_PATH}catalina.sh ${SRV_PATH}catalina.sh${DT})
sed -i "/^JAVA_OPTS=\"$JAVA_OPTS/a $EXPORT_CONTENT" ${SRV_PATH}catalina.sh
fi
Shell之听云探针配置文件自动修改脚本升级版
最新推荐文章于 2023-01-05 11:17:20 发布