首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Shell case条件语句的应用实践

Shell case条件语句的应用实践

作者头像
云计算小黑
发布于 2022-12-28 20:29:50
发布于 2022-12-28 20:29:50
1.7K0
举报
文章被收录于专栏:小黑博客小黑博客
语法格式

代码语言:javascript
复制
case "变量" in
    值1)
        指令1
        ;;
    值2)
        指令2
        ;;
    *)
        指令3
        ;;
esac

示例

代码语言:javascript
复制
#!/bin/bash
read -p "请输入[1-3]数字:" a
case "$a" in
    1)
      echo "1"
      ;;
    2)
      echo "2"
      ;;
    3)
      echo "3"
      ;;
    *)
    echo "请输入[1-3]"
esac

示例2

代码语言:javascript
复制
#!/bin/bash
[ $# -ne 1 ] && echo "Uasge: $0 {start|stop|restart|relad|status}" && exit

function start(){
ps aux | grep [n]ginx | grep -q master
    if [ $? -eq 0 ]; then
        echo "nginx启动成功"
    else
        /usr/local/nginx/sbin/nginx &>/dev/null
        if [ $? -eq 0 ]; then
            echo "nginx启动成功"
        else
            echo "nginx启动失败"
        fi
    fi
}
function stop(){
ps aux | grep [n]ginx | grep -q master
    if [ $? -eq 0 ]; then
        /usr/local/nginx/sbin/nginx -s stop >/dev/null
        sleep 2
        ps aux | grep [n]ginx | grep -q master
        if [ $? -ne 0 ]; then
            echo "niginx关闭成功"
        else
            echo "nginx关闭失败"
        fi
      echo "nginx关闭成功"
    fi
}
case "$1" in
start)
    start
;;
stop)
    stop
;;
restart)
# ps aux | grep [n]ginx | grep -q master
#    if [ $? -eq 0 ];then
#        /usr/local/nginx/sbin/nginx -s stop &>/dev/null
#        sleep 2
#        /usr/local/nginx/sbin/mginx &>/dev/null
#        if [ $? -eq 0 ]; then
#            echo "nginx 重启成功"
#        else
#            echo "nginx重启失败"
#        fi
#    else
#        /usr/local/nginx/sbin/nginx &>/dev/null
#        if [ $? -eq 0 ];then
#            echo "nginx重启成功"
#        else
#            echo "nginx重启失败"
#        fi
#   fi
   stop
   start
;;
reload)
   stop
   start
;;
status)
    ps aux | grep [n]ginx | grep -q master
    if [ $? -eq 0 ]; then
        echo "nginx is up"
    else
        echo "nginx is down"
    fi
;;
*)
 echo "Uasge: $0 {start|stop|restart|relad|status}"
exit
esac
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 语法格式
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档