服务启动、停止、状态和日志查看等shell脚本

   日期:2020-08-29     浏览:164    评论:0    
核心提示:Background以Redis服务为例,该shell脚本可以通过传入不同的参数实现服务的启动、停止、服务运行状态查看、服务运行日志查看和进入服务shell命令界面等功能。直接上脚本operator.sh用法可以使用help参数查看哈,用法例如:先赋执行权限chmod +x operator.sh查看帮助命令operator.sh help#!/bin/bash # # 服务基本信息operate=$1ps_1=./redis-serverpid_1=`ps -ef |

Background

以Redis服务为例,该shell脚本可以通过传入不同的参数实现服务的启动、停止、服务运行状态查看、服务运行日志查看和进入服务shell命令界面等功能。

直接上脚本operator.sh

用法可以使用help参数查看哈,用法例如:
先赋执行权限chmod +x operator.sh
查看帮助命令operator.sh help

#!/bin/bash  
# 
# 服务基本信息
operate=$1
ps_1='./redis-server'
pid_1=`ps -ef | egrep "$ps_1" | egrep -v grep | awk '{print $2}'`
dir_home=/usr/redis/
dir_log=/usr/redis/redis-server.log

# 判断输入参数
if [[ -z $operate || $operate = "help" ]]; then
    echo '#####'
    echo "please input your operate [run|stop|status|log|shell]"
    echo '#####'
fi

# 启动服务
if [[ $operate = "run" || $operate = "start" ]]; then
    rm -rf $dir_log
    nohup $dir_home/bin/redis-server $dir_home/redis.conf >> $dir_log 2>&1 &

# 停止服务
elif [[ $operate = "stop" ]]; then
    kill -9 $pid_1

# 查看服务运行状态
elif [[ $operate = "status" ]]; then
    if [[ $pid_1 ]]; then
        # 黄底蓝字
        echo -e "\033[43;34m RUNNING \033[0m"
    else
        # 蓝底黑字
        echo -e "\033[44;30m STOPPED \033[0m"
    fi

# 查看服务运行日志
elif [[ $operate = "log" ]]; then
    if [[ -e $dir_log ]]; then
        tail -f $dir_log
    else
        echo '#####'
        echo "No logs have been generated so far"
        echo '#####'
    fi

# 进入服务命令行界面
elif [[ $operate = "shell" ]]; then
    if [[ $pid_1 ]]; then
        $dir_home/bin/redis-cli -h Cloud09 -p 6379
    else
        echo '#####'
        echo "The redis service has not been started yet"
        echo '#####'
    fi
fi
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服