在linux中创建文本菜单
CentOS7.3学习笔记总结(七十四)-在linux中创建文本菜单
在linux系统使用中,shell脚本的交互最常用的方式是使用菜单(文本菜单),而文本菜单的核心就是case命令,也就是说是通过case命令实现菜单的交互,下面我们设计一个简单的脚本在linux系统中实现文本菜单。
先看一下菜单效果:

脚本内容:
[root@localhost ~]# cat menutext.sh
#!/bin/bash
function menu {
clear
echo -e "\t\t\tDisplay Computer Info Menu\n"
echo -e "\t1. Display disk space"
echo -e "\t2. Display memory usage"
echo -e "\t0. Exit program\n\n"
echo -en "\t\tEnter option: "
read -n 1 option
}
function diskinfo {
clear
df -k
}
function meminfo {
clear
cat /proc/meminfo
}
while [ 1 ]
do
menu
case $option in
0)
break ;;
1)
diskinfo ;;
2)
meminfo;;
*)
clear
echo "Sorry, wrong selection";;
esac
read -n 1 line
done
clear
菜单显示是通过echo语句实现,echo命令的使用方法请参阅以前的文章《linux系统中的最常用命令之一-echo》。
菜单内容是通过自定义的函数实现,函数的调用通过case来实现。
获取输入信息,通过read命令实现,-n 1限制只读取一个字符,使用者只需输入一个数字,不用按回车就可以实现调用。
实现过程:在命令行中输入sh menutext.sh,会显示我们设置好的菜单:

当我们输入1时,显示硬盘信息:

在此页面我们,我们点任意键,回到菜单。
当我们输入2时,显示内存信息:

当我们输入0时,退出程序运行。是不是非常简单,脚本也非常简单。
相关推荐
-
MySQL 中的反斜杠 \\,真是太坑了2025-04-21 01:42:45
-
mysql修改主键为自增 ,如果自增达到最大值,新增加数据会怎样?
mysql修改主键为自增 ,如果自增达到最大值,新增加数据会怎样?2025-04-21 01:31:46 -
Nginx学习笔记 autoindex on2025-04-21 00:26:47
-
.MySQL中的BETWEEN(在某个范围)2025-04-21 00:04:20
-
nginx设置目录浏览并支持中文2025-04-21 00:00:35