编写一个shell程序,实现如下所示的菜单。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编写一个shell程序,实现如下所示的菜单。相关的知识,希望对你有一定的参考价值。

编写一个shell程序,实现如下所示的菜单。
[1] Add Directory
[2] Delete Directory
[3] Change Directory
[4] View Selected Directory
[5] Exit
并为每个菜单项编写一个处理函数。用户选择一个有效菜单项之后,程序执行对应的函数,然后询问用户是否想再看一遍菜单。如果用户输入菜单项无效,则显示信息:
Invalid entry, try again.
然后重新显示菜单。

参考技术A 我给你一个我工作中写的脚本,可以参考下:
#!/bin/sh

clear
while [ 1=1 ]
do
echo -e "\n---------------------------------文件查询---------------------------------------"
echo -e "\n\n\n"
echo " 【 1 扣费查询 】"
echo -e "\n"
echo " 【 2 对账查询 】"
echo -e "\n"
echo " 【 3 调账查询 】"
echo -e "\n"
echo " 【 4 委托查询 】"
echo -e "\n\n\n\n"
echo -e "输入任意键退出............"
echo "--------------------------------------------------------------------------------"
read a

case $a in

1)
#扣费查询
sleep 0.3
clear
./file_s.sh 1
;;
2)
#对账查询
sleep 0.3
clear
./file_s.sh 2
;;
3)
#调账查询
sleep 0.3
clear
./ file_s.sh 3
;;
4)
#委托查询
sleep 0.3
clear
./file_s.sh 4
;;
*)
exit 1
;;
esac
done

至于file_s.sh,存放的是执行函数本回答被提问者采纳
参考技术B 命令是select 自己去搜索怎么用吧

给你一个建议 买本书看 只要你能耐心的看完一本关于shell编程方面的书 这些都不是问题
参考技术C 哪里的如下??? 参考技术D 如下?

AbpZero--3.菜单配置

配置一个如上图所示的菜单
 

1.打开文件MpaNavigationProvider.cs

【..\\MyCompanyName.AbpZeroTemplate.Web\\Areas\\Mpa\\Startup\\MpaNavigationProvider.cs】
添加如下代码(如下图所示)
.AddItem(new MenuItemDefinition(
  PageNames.App.Tenant.Test,//一个常量,控制菜单是否被选中
  L("Test"),//菜单显示名称,在语言文件中配置
  url: "Mpa/Test",//菜单路径
  icon: "icon-globe",//菜单图标
))

 

 

2.打开文件PageNames.cs

【..\\MyCompanyName.AbpZeroTemplate.Web\\App_Start\\Navigation\\PageNames.cs】
在代码中添加一个常量
public static class Tenant
{
    public const string Dashboard = "Dashboard.Tenant";
    public const string Settings = "Administration.Settings.Tenant";
    public const string Test = "Test";//这里是添加的常量
}

 

3.打开语言文件

AbpZeroTemplate-zh-CN.xml

【..\\MyCompanyName.AbpZeroTemplate.Core\\Localization\\AbpZeroTemplate\\AbpZeroTemplate-zh-CN.xml】
在最后添加一个键值对
<text name="Test" value="测试" />

 

保存生成,刷新页面即可显示,现在点击菜单会报404错误,这是因为我们还没有添加对应的控制器
在【..\\MyCompanyName.AbpZeroTemplate.Web\\Areas\\Mpa\\Controllers】下添加一个Test控制器,并创建Index视图
 

4.Index视图修改

此时Index视图中的代码改成这样
@using MyCompanyName.AbpZeroTemplate.Web.Navigation

@{
    ViewBag.CurrentPageName = PageNames.App.Tenant.Test;//上面所定义就是这个常量,作用就是选中菜单时会高亮
}

<h2>测试页面</h2>

 

5.生成项目

最后生成项目,刷新页面。此时不管以哪个用户登录都会显示此菜单,而实际项目中一般都会让不同角色的用户看到不同的菜单,这时就需要给菜单添加权限,只有拥有此权限的用户才显示菜单,请查看后续文章

以上是关于编写一个shell程序,实现如下所示的菜单。的主要内容,如果未能解决你的问题,请参考以下文章

编写一个弹出式菜单的shell程序,利用函数实现简单的菜单功能,n的值由键盘输入:

编写一个shell程序,显示如下菜单并完成相应功能:1重启计算机2关机3显示

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

Delphi中如何实现如图所示的进度条效果

shell脚本 关于做一个菜单,然后从二级菜单返回到主菜单,如何实现

shell实现多级菜单脚本编写