• (转)shell实现多级菜单脚本编写


    shell实现多级菜单脚本编写

    原文:https://www.yuanmas.com/info/2gOwBPvqyb.html

    这篇文章主要介绍了Shell实现多级菜单系统安装脚本实例分享,本文脚本用多级菜单实现LAMP、LNMP安装展现效果,需要的朋友可以参考下:

    提示:本脚本主要实现多级菜单效果,并没有安装LAMP、LNMP环境,如果要用在实际生成环境中部署LNMP、LAMP环境,只需要简单修改一下就可以了。

    演示效果:

    1、一级菜单

    2、二级菜单

    3、执行操作

    脚本参考:

    代码如下:
    #!/bin/bash
    #
    [ -f /etc/init.d/functions ] && . /etc/init.d/functions
    function menu(){
    cat << EOF
    ----------------------------------------------
    |*******Please Enter Your Choice:[1-4]*******|
    ----------------------------------------------
    *   `echo -e "33[35m 1)lamp install33[0m"`
    *   `echo -e "33[35m 2)lnmp install33[0m"`
    *   `echo -e "33[35m 3)quit33[0m"`
    *   `echo -e "33[35m 4)return main menu33[0m"`
    EOF
    }
    function lamp_menu(){
    cat << EOF
    ----------------------------------------------
    |*******Please Enter Your Choice:[1-4]*******|
    ----------------------------------------------
    *   `echo -e "33[35m 1)http install33[0m"`
    *   `echo -e "33[35m 2)mysql install33[0m"`
    *   `echo -e "33[35m 3)php install33[0m"`
    *   `echo -e "33[35m 4)return main menu33[0m"`
    EOF
    read -p "####please input second_lamp optios[1-4]: " num2
    expr $num2 + 1 &>/dev/null  #这里加1,判断输入的是不是整数。
    if [ $? -ne 0 ];then    #如果不等于零,代表输入不是整数。
     echo "###########################"
     echo "Waing !!!,input error   "
     echo "Please enter choose[1-4]:"
     echo "##########################"
     exit 1
    fi
    case $num2 in
      1)
       action "Installed httpd..." /bin/true
       sleep 2
       lamp_menu
       ;;
      2)
       action "Installed MySQL..." /bin/true
       sleep 2
       lamp_menu
       ;;
      3)
       action "Installed PHP..." /bin/true
       sleep 2
       lamp_menu
       ;;
      4)
       clear
       menu
       ;;
      *)
       clear
       echo 
       echo -e "33[31mYour Enter the wrong,Please input again Choice:[1-4]33[0m"
       lamp_menu
    esac
    }
    function lnmp_menu(){
    cat << EOF
    ----------------------------------------------
    |*******Please Enter Your Choice:[1-4]*******|
    ----------------------------------------------
    *   `echo -e "33[35m 1)nginx install33[0m"`
    *   `echo -e "33[35m 2)mysql install33[0m"`
    *   `echo -e "33[35m 3)php install33[0m"`
    *   `echo -e "33[35m 4)return main menu33[0m"`
    EOF
    read -p "please input second_lnmp options[1-4]: " num3
    expr $num2 + 1 &>/dev/null  #这里加1,判断输入的是不是整数。
    if [ $? -ne 0 ];then  #如果不等于零,代表输入不是整数。
      echo 
      echo "Please enter a integer"
      exit 1
    fi
    case $num3 in
       1)
         action "Installed Nginx..." /bin/true
         sleep 2
         lnmp_menu
         ;;
       2)
        action "Installed MySQL..." /bin/true
        sleep 2
        clear
        lnmp_menu
        ;;
       3)
         action "Installed PHP..." /bin/true
         sleep 2
         clear
         lnmp_menu
         ;;
       4)
        clear
        menu
        ;;
       *)
        clear
        echo
        echo -e "33[31mYour Enter the wrong,Please input again Choice:[1-4]33[0m"
        lnmp_menu
    esac
    }
    clear
    menu
    while true ;do
     read -p "##please Enter Your first_menu Choice:[1-4]" num1
      expr $num1 + 1 &>/dev/null   #这里加1,判断输入的是不是整数。
      if [ $? -ne 0 ];then   #如果不等于零,代表输入不是整数。
        echo "----------------------------"
        echo "|      Waring!!!           |"
        echo "|Please Enter Right Choice!|"
        echo "----------------------------"
        sleep 1
       case $num1 in
          1)
           clear
           lamp_menu
           ;;
          2)
           clear
           lnmp_menu
           ;;
          3)
           clear
           break
           ;;
          4)
           clear
           menu
           ;;
          *)
           clear
           echo -e "33[31mYour Enter a number Error,Please Enter again Choice:[1-4]
    : 33[0m"       
          menu
       esac
    done
  • 相关阅读:
    mvn
    MySQL 数据类型
    Request获取客户端IP
    struts1
    tomcat8.5 Host-Manager配置访问的方法
    struts2框架
    windows注册表
    windows常用命令
    浏览器内核
    创建分区swap分区
  • 原文地址:https://www.cnblogs.com/liujiacai/p/7821264.html
Copyright © 2020-2023  润新知