shell命令停服务、启服务、修改替换文件中某字段、修改环境变量文件最后一行后面添加内容、解压tar.gz包

本文详细介绍了如何自动化部署COE系统的过程,包括停止旧服务、更新环境变量、配置IP地址、解压安装包、启动MySQL、Nginx及COE服务,确保系统稳定运行。

echo  ----请手动修改version参数的值,为coe包中的日期数字-----
version=0901
echo  -----请修改ip参数地址
ip=192.168.0.137

coe_version=coe$version.tar.gz
echo ----------------------安装版本为$coe_version-----------
sleep 2
rm -rf coe-source

#先停服务
echo  -------------stop coe-server-----------
#grep命令的参数 -v 即反向查找,awk '{print $2}'  打印出第二列参数即所有过滤后进程的pid;
for N in `ps -ef | grep "coe" | grep -v grep | awk '{print \$2}'`
do
        STOP="kill -9 $N"
        eval $STOP
done


echo  -----stop  mysql--------------------------------------------------
ps -ef|grep mysql
sleep 3
#grep命令的参数 -v 即反向查找,awk '{print $2}'  打印出第二列参数即所有过滤后进程的pid;
for N in `ps -ef | grep "mysql" | grep -v grep | awk '{print \$2}'`
do
        STOP="kill -9 $N"
        eval $STOP
done

echo --------------------mysql stopped---------------
sleep 5
ps -ef|grep mysql
sleep 4

rm -rf mysql

echo   --------------stop nginx----------------
pkill nginx
rm -rf nginx

echo   -----------------解压coe安装包$coe_version-----------------------
tar -xvzf $coe_version
cp -r coe$version coe-source
echo ---------------- coe安装路径/home/rpa/coe-source------------------------
sleep 3
echo  -----------------开始解压JDK,MYSQL,NGINX,Libaio等安装工具------------
sleep 3 
tar -xvzf jdkMysqlNginxLibaio.tar.gz
echo --------------------JDK,MYSQL,NGINX,Libaio工具解压完成---------------------
sleep 3
#echo --------------配置环境变量------------------
echo  -----------------------修改环境变量.bash_profile-------
cp .bash_profile  .bash_profile_bak


if [ `grep -c JAVA_HOME .bash_profile` -eq 0 ];then
        echo '未配置环境变量,在最后面添加环境变量'
        #sed -i '/export PATH/a\export JAVA_HOME=/home/rpa/jdk1.8\nexport JRE_HOME=${JAVA_HOME}/jre\nexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib\nexport PATH=${JAVA_HOME}/bin:$PATH:/home/rpa/mysql/bin\nexport LD_LIBRARY_PATH=/home/rpa/libaio/lib:$LD_LIBRARY_PATH' .bash_profile
        sed -i "\$a export JAVA_HOME=/home/rpa/jdk1.8\nexport JRE_HOME=${JAVA_HOME}/jre\nexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib\nexport PATH=${JAVA_HOME}/bin:$PATH:/home/rpa/mysql/bin\nexport LD_LIBRARY_PATH=/home/rpa/libaio/lib:$LD_LIBRARY_PATH" .bash_profile

else
        echo '已经配置环境变量'
fi

echo --------check  java-----------
source .bash_profile
java -version
#修改coe-server配置
echo  ---------修改/home/rpa/coe-source/coe-server/config/application.properties中IP地址为i$ip----
sleep 3
cp /home/rpa/coe-source/coe-server/config/application.properties /home/rpa/coe-source/coe-server/config/application.properties_bak
sed "s/192.168.0.137/$ip/g" /home/rpa/coe-source/coe-server/config/application.properties_bak >/home/rpa/coe-source/coe-server/config/application.properties
sleep 3

#echo   ------开始修改/home/rpa/nginx/conf/nginx.conf中IP地址-------------
echo  ------修改nginx配置/home/rpa/nginx/conf/nginx.conf中IP地址为$ip-------------
cp /home/rpa/nginx/conf/nginx.conf /home/rpa/nginx/conf/nginx_bak.conf
sed "s/192.168.0.137/$ip/g" /home/rpa/nginx/conf/nginx_bak.conf >/home/rpa/nginx/conf/nginx.conf

echo -------------ip修改完成,启动服务---------------

#开始启动服务
echo -------------mysql 启动中-------------
sleep 1
ps -ef|grep mysql
sleep 2
nohup /home/rpa/mysql/bin/mysqld_safe --defaults-file=/home/rpa/mysql/my.cnf > /dev/null 2>&1 &
sleep 4
echo  -----------------mysql服务---------------------
ps -ef|grep mysql

sleep 4

echo -------------nginx启动中---------------------
pkill nginx
ps -ef|grep nginx
/home/rpa/nginx/sbin/nginx
ps -ef|grep nginx
sleep 4

echo -------------coe-server启动中------------------
cd  /home/rpa/coe-source/coe-server/
ps -ef|grep coe
sleep 2

chmod 755 *
echo "-------------starting coe-server-------------------"
nohup java -jar coe-server-0.0.1-SNAPSHOT.jar -Xms2048m -Xmx2048m > log.txt 2>&1 &
sleep 5
ps -ef|grep coe
echo  --------------请查看log:    tail -f /home/rpa/coe-source/coe-server/log.txt   ---------
#tail -f /home/rpa/coe-source/coe-server/log.txt 
 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值