首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Bash菜单-从SubMenu返回主菜单?

Bash菜单是一种在Linux系统中使用Bash脚本编写的交互式菜单,用于提供用户友好的界面来执行各种操作。在Bash菜单中,可以通过创建子菜单(SubMenu)来实现更复杂的功能。

要从SubMenu返回主菜单,可以使用以下步骤:

  1. 在主菜单中,使用一个无限循环(如while true)来保持菜单的持续显示。
  2. 在主菜单中,使用一个选择语句(如case)来根据用户输入执行相应的操作或跳转到子菜单。
  3. 当用户选择进入子菜单时,在子菜单中同样使用一个无限循环来保持子菜单的持续显示。
  4. 在子菜单中,同样使用一个选择语句来根据用户输入执行相应的操作或返回主菜单。
  5. 当用户选择返回主菜单时,可以使用break语句跳出当前循环,回到主菜单的循环中继续显示主菜单。

以下是一个示例代码,演示了如何实现从SubMenu返回主菜单的功能:

代码语言:txt
复制
#!/bin/bash

while true; do
    clear
    echo "主菜单"
    echo "1. 执行操作1"
    echo "2. 进入子菜单"
    echo "3. 退出"

    read -p "请输入选项:" choice

    case $choice in
        1)
            echo "执行操作1"
            # 执行操作1的代码
            ;;
        2)
            while true; do
                clear
                echo "子菜单"
                echo "1. 执行子菜单操作1"
                echo "2. 返回主菜单"

                read -p "请输入选项:" sub_choice

                case $sub_choice in
                    1)
                        echo "执行子菜单操作1"
                        # 执行子菜单操作1的代码
                        ;;
                    2)
                        break  # 返回主菜单
                        ;;
                    *)
                        echo "无效的选项,请重新输入"
                        ;;
                esac
            done
            ;;
        3)
            exit 0  # 退出程序
            ;;
        *)
            echo "无效的选项,请重新输入"
            ;;
    esac
done

这个示例代码中,主菜单和子菜单分别使用了一个无限循环来保持菜单的持续显示。在子菜单中,当用户选择返回主菜单时,使用了break语句跳出当前循环,回到主菜单的循环中继续显示主菜单。

请注意,这只是一个简单的示例,实际应用中可以根据需求进行修改和扩展。另外,腾讯云提供了一系列云计算相关的产品,可以根据具体需求选择适合的产品进行开发和部署。具体产品信息和介绍可以参考腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android开发实现SubMenu选项菜单和子菜单示例

本文实例讲述了Android开发实现SubMenu选项菜单和子菜单。分享给大家供大家参考,具体如下: 简介: SubMenu:代表一个子菜单,包含1~N个MenuItem 实现效果: ?...具体实现方法: 活动 MainActivity: public class MainActivity extends AppCompatActivity { //定义 “字体大小” 菜单项的标识 final...SubMenu fontMenu = menu.addSubMenu("字体大小"); //设置菜单图标 fontMenu.setIcon(R.drawable.seek02); //设置菜单头的图标...menu.add(0, PLAIN_ITEM, 0, "普通菜单选项"); //向Menu中添加"字体颜色"的子菜单 SubMenu colorMenu = menu.addSubMenu("字体颜色..."); colorMenu.setIcon(R.drawable.find1); //设置菜单头图标 colorMenu.setHeaderIcon(R.drawable.find); //设置菜单头标题

1.3K30
  • 安卓开发_浅谈SubMenu(子菜单

    菜单,即点击菜单后出现一个菜单栏供选择 创建子菜单的步骤:   (1) 覆盖Activity的onCreateOptionsMenu()方法,调用Menu的addSubMenu()方法来添加子菜单   ...(2) 调用SubMenu的add()方法,添加子菜单项   (3) 覆盖onContextItemSelected()方法,响应子菜单的单击事件 示例: (1) 覆盖Activity的onCreateOptionsMenu...()方法,调用Menu的addSubMenu()方法来添加子菜单 1 //动态添加子菜单 2 3 SubMenu file = menu.addSubMenu...("文件");//子菜单的名字 4 SubMenu edit = menu.addSubMenu("编辑");//子菜单的名字 5 (2) 调用SubMenu的add(...24 25 SubMenu file = menu.addSubMenu("文件");//子菜单的名字 26 SubMenu edit = menu.addSubMenu

    91960

    windows右键菜单选择vscode打开当前目录项目

    vscode 每次打开新项目都要先打开vscode在从里面打开目录,每次这样感觉效率比较低,就想着能不能有一个我直接在当前目录下右键菜单,点一下就直接用vscode打开当前目录,总共找到3种方案:安装...先找到你电脑上 vscode 的 .exe 安装路径直接通过开始菜单里的 vscode - 打开文件位置,就能找到 vscode 的快捷方式位置,然后右键 - 属性 - 快捷方式 - 目标(T),这个就是...将这个修改好的 .text 文件的文件后缀名直接改成 .reg修改好后缀后,直接双击这个文件,提示什么的直接选是就可以了,没影响,然后点完之后在右键菜单里就会发现多了一个 vscode 的选项,然后点击就可以直接打开当前目录了...这个时候你再去win + R ,然后输入 regedit 进入到注册表里看也能看到,这种方式也就是把第二步的自己修改注册表的操作傻瓜化了然后其他的软件自己也可以通过类似方式举一反三,往右键菜单里添加了,

    77030

    java使用递归实现三级菜单

    input.equals("back")) { System.out.println("请选择二级菜单(输入数字 1/2/3)或返回上一级(输入 back):");...input.equals("back")) { System.out.println("请选择三级菜单(输入数字 1/2/3)或返回上一级(输入 back):");...printSubMenu 方法与 printMenu 方法类似,不同之处在于它接受一个二级菜单列表作为参数,并且循环等待用户输入二级菜单项或返回上一级。如果用户输入无效,则重新提示用户。...如果用户选择了一个有效的二级菜单项,则调用 printSubSubMenu 方法打印该二级菜单项的三级菜单。 printSubSubMenu 方法同样循环等待用户输入三级菜单项或返回上一级。...在 printSubSubMenu 方法中,如果用户选择了返回上一级,则方法直接返回,从而返回到上一级菜单

    1.5K60

    使用 Spring Boot 数据库实现动态下拉菜单

    使用 Spring Boot 数据库实现动态下拉菜单 动态下拉菜单(或依赖下拉菜单)的概念对于编码来说是令人兴奋且具有挑战性的。动态下拉列表意味着一个下拉列表中的值取决于前一个下拉列表中选择的值。...函数 saylistDistrict() 数据库检索数据,处理并返回 JSON 格式的数据,具体解释如下: 建立数据库连接并调用相应的选择查询来检索地区详细信息及其各自的代码。...迭代每个地区后,生成的 JSONObject 将被添加到 JSONArray“地区列表”中。...分隔 @RequestParam 注释 URL 读取 distid1 值并将该值存储在String Discode变量中。然后将值 Discode 存储到字符串变量“discode”中。...检索到的数据存储在 JSONArray 中,该 JSONArray 在方法末尾以字符串格式返回

    1K50

    Vue2案例:封装动态的el-menu组件

    el-menu提供水平和垂直菜单组件,可以通过设置el-menu-item和el-submenu来生成菜单项和子菜单。...在el-menu中,我们可以使用el-menu-item和el-submenu来生成菜单项和子菜单。...其中,el-menu-item的index属性用于设置菜单项的唯一标识,slot="title"用于设置菜单项的标题,el-submenu中的template slot="title"用于设置子菜单的标题...我们需要根据后台返回菜单数据动态生成菜单,同时支持菜单项的选中和展开状态的保存。1. 动态生成菜单为了实现动态生成菜单,我们需要将菜单数据后台获取到,并将其转换成el-menu所需的格式。...j接下来,我们使用el-submenu来生成子菜单,通过template slot="title"来设置子菜单的标题,通过v-for来遍历子菜单项。

    84731

    CVE-2017-0263 漏洞分析到 Windows 菜单管理组件

    函数 xxxSetWindowPos 中返回后,函数 xxxTrackPopupMenuEx 调用 xxxWindowEvent 函数以发送代表“菜单弹出开始”的 EVENT_SYSTEM_MENUPOPUPSTART...接下来菜单对象类型为模态的情况下线程将会进入菜单消息循环等待状态,而非模态的情况将会返回。...执行流函数 xxxMNCloseHierarchy 返回到函数 xxxMNCancel 中,系统根据当前弹出菜单对象的成员标志位 fIsTrackPopup 选择调用 xxxDestroyWindow...---- 验证代码函数 验证代码首先通过调用 CreatePopupMenu 等函数创建两个非模态的可弹出的菜单对象。...验证代码函数执行逻辑 ---- 自定义挂钩处理函数 在函数 TrackPopupMenuEx 执行期间,系统调用函数 xxxCreateWindowEx 创建新的菜单类型的窗口对象。

    72010

    vuejs之结合使用vue+element-ui搭建后台管理页面

    例如在el-submenu中的index='1',如果在这里设置default-openeds='["1"]',说明默认打开的index=1的子菜单。 :default-active:默认选中。...el-submenu:可展开的菜单,常用属性: index:菜单的下标,文本类型,不能是数字类型。...template:对应el-submenu菜单名,可以在其设置菜单图标,通过i标签的class属性。 el-menu-item:菜单的子节点,不可再展开。index属性值为文本类型。...我们要将一开始的element代码,转移到黄色区域里面,不然的话会出现红色和橙色区域里都会出现菜单栏,因为我们的页面是入口进入的。...为了点击时对菜单进行高亮,如果点击的当前页面和菜单对应,就加上class="is-active"。

    1.1K10

    本周日先行者视频“React多级菜单

    看一小段JSON: { "subMenu": [ { "name": "菜单一", "subMenu": [...它的概念来讲,生命周期分为三个阶段,实例化,存在期,销毁期。我们用的最多的就是实例化,这个阶段主要控制组件的构建、展示,根据以下的五个步骤来控制组件的展示和逻辑控制。...render:是一个组件必须有的方法,是一个函数,并返回JSX或其他组件来构成DOM componentDidMount:即调用了render方法后,组件加载成功并被成功渲染出来以后所执行的回调函数 第三个知识点...在UI设计图上,有右箭头的,必然是存在于下一级菜单。 而多级菜单则会根据JSON的每一节点是否存在subMenu来判断是否有子菜单存在。那么这个subMenu就可以理解为UI设计图上的下拉箭头。...根据这个结构再来回看递归多级菜单,就更简单了,无非是不断的循环每一级的JSON,判断是否存在subMenu而已

    1K90
    领券