记一次shell脚本编写

#!/bin/sh
echo "[INFO] 一键服务启动脚本开始运行 --------"
sleep 2
PID=`ps -ef|grep "redis-server"|grep -v grep|awk '{print $2}'`;
if [ ! -z "$PID" ];then
        kill -9 "$PID"
        echo "[INFO] redis服务关闭成功"
else
        echo "[WARN] redis服务未启动."
fi
sleep 2
echo "[INFO] 开始下一步 --------> 准备启动redis并设置密码"
function on_redis()
{
    APP='redis'
    BASE_DIR='/www/server/redis'

    count=`ps -ef | grep redis | grep -v grep | wc -l`
    if [ ${count} == 0 ]; then
        echo "[INFO] ${APP} 服务启动中..."
        # 进入该应用根目录下
        cd ${BASE_DIR}
        # 启动服务
        nohup ./src/redis-server >> info.log 2>&1 &
        sleep 2
        count=`ps -ef | grep redis | grep -v grep | wc -l`
        if [ ${count} == 0 ]; then
            echo "[ERR] ${APP} 服务启动失败!"
        else
            echo "[INFO] ${APP} 服务已启动!"
        fi

    else
        echo "[INFO] ${APP} 服务已启动!"
    fi
}
# 调用以上方法
echo "========redis启动脚本执行 Beginning========"
on_redis
echo "========脚本执行 finish========"
sleep 2
function set_pass() {
    BASE_DIR='/www/server/redis'
echo "${APP} 密码更新服务启动中..."
        # 进入该应用根目录下
        cd ${BASE_DIR}
        # 启动服务
        redis-cli config set requirepass zk123
        echo "[INFO] 密码更新完成"
}
# 调用以上方法
echo "========redis密码更新脚本执行 Beginning========"
set_pass
echo "========脚本执行 finish========"
sleep 2
PID_EMQX=`ps -ef|grep "emqx"|grep -v grep|awk '{print $2}'`;
if [ ! -z "$PID_EMQX" ];then
for pid_emqx in $PID_EMQX
do
    echo "[INFO]开始停止进程---" + ${pid_emqx}
    kill -9 "$pid_emqx"
done
        echo "[INFO] EMQX服务关闭成功"
else
        echo "[WARN] EMQX服务未启动."
fi
sleep 2
echo "[INFO] 开始下一步 --------> 准备启动EMQX"
function start_emqx() {
    APP_NAME='emqx'
    emqx_home="/usr/local/emqx/emqx"
    count=`ps -ef | grep emqx | grep -v grep | wc -l`
    if [ ${count} == 0 ]; then
        echo "[INFO] ${APP_NAME} 服务启动中..."
        # 进入该应用根目录下
        cd ${emqx_home}/bin
        # 启动服务
        ./emqx start
        sleep 2s
        count=`ps -ef | grep emqx | grep -v grep | wc -l`
        if [ ${count} == 0 ]; then
            echo "[ERR] ${APP_NAME} 服务启动失败!"
        else
            echo "[INFO] ${APP_NAME} 服务已启动!"
        fi

    else
        echo "[INFO] ${APP_NAME} 服务已启动!"
    fi
}
sleep 2
# 调用以上方法
echo "========jar脚本执行 Beginning========"
start_emqx
echo "========脚本执行 finish========"
sleep 2
PID=`ps -ef|grep "java"|grep -v grep|awk '{print $2}'`;
if [ ! -z "$PID" ];then
        kill -9 "$PID"
        echo "[INFO] java服务关闭成功"
else
        echo "[WARN] java服务未启动."
fi
sleep 2
echo "[INFO] 开始下一步 --------> 准备启动JAR"
function start_jar {
    JAVA_NAME='JAR'
    JAVA_PORT='192.168.11.111:9001'
    jar_home="/usr/local/take_out"
    cd ${jar_home}
    nohup java -jar reggie_take_out-1.0-SNAPSHOT.jar > nohup.out 2>&1 &
    sleep 2s
    count=`ps -ef | grep java | grep -v grep | wc -l`
        if [ ${count} == 0 ]; then
            echo "[ERR] ${JAVA_NAME} 服务启动失败!"
        else
            echo "[INFO] ${JAVA_NAME} 服务已启动!请在浏览器输入${JAVA_PORT}查看"
    fi
}
# 调用以上方法
echo "========jar脚本执行 Beginning========"
start_jar
echo "========脚本执行 finish========"
echo "脚本编写 Mr.Li"
echo "------------------------------结束分割线---------------------------------------"

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值