实验一:Shell菜单的实现
实验任务说明
(1)学生要用“!”
(2)菜单内容有“学生信息管理脚本工具”、作者姓名、学号、操作项(操作项根据自己的理解写)。
(3)菜单显示时,要求有相关信息提示,提示用户输入,当用户选择对应菜单的操作项时,打印出对应的操作(用户选择菜单项,需要使用if或case语句来实现)。
(4)菜单项界面符号显示的多少,要求设置一个只读变量来进行控制(也就是说界面符号需要使用循环打印出来)。
引用 皆我百晓生 小程序回复内容作答:
实验代码如下:
#!/bin/bash
# 设置界面符号显示的数量
readonly LINE_NUM=30
# 打印界面符号
print_lines() {
for ((i=0; i<LINE_NUM; i++)); do
echo -n "="
done
echo ""
}
# 显示菜单
show_menu() {
clear
print_lines
echo "学生信息管理脚本工具"
echo "作者:姓名"
echo "学号:学号"
print_lines
echo "请选择操作:"
echo "1. 添加学生信息"
echo "2. 查找学生信息"
echo "3. 修改学生信息"
echo "4. 删除学生信息"
echo "0. 退出"
print_lines
}
# 添加学生信息
add_student() {
echo "请输入学生学号:"
read student_id
echo "请输入学生姓名:"
read student_name
echo "学生信息添加成功:"
echo "学号:$student_id"
echo "姓名:$student_name"
}
# 查找学生信息
search_student() {
echo "请输入学生学号:"
read student_id
echo "查找学生信息:"
echo "学号:$student_id"
echo "姓名:张三"
}
# 修改学生信息
modify_student() {
echo "请输入学生学号:"
read student_id
echo "请输入学生新姓名:"
read student_name
echo "学生信息修改成功:"
echo "学号:$student_id"
echo "新姓名:$student_name"
}
# 删除学生信息
delete_student() {
echo "请输入学生学号:"
read student_id
echo "删除学生信息:"
echo "学号:$student_id"
echo "姓名:张三"
}
# 主函数
main() {
while true; do
show_menu
read option
case $option in
1) add_student;;
2) search_student;;
3) modify_student;;
4) delete_student;;
0) echo "退出脚本"; break;;
*) echo "无效的选项,请重新选择";;
esac
echo "按回车键继续..."
read
done
}
# 调用主函数
main
运行该脚本,即可实现一个简单的Shell菜单。
【以下回答由 GPT 生成】
首先,我们需要创建一个名为menu.sh的Shell脚本文件。在该文件中,我们可以使用以下代码来实现Linux菜单:
#!/bin/bash
# 定义菜单项列表
menu_items=(
"学生信息管理脚本工具"
"作者姓名"
"学号"
"操作项"
)
# 定义界面符号数量
readonly SYMBOL_COUNT=20
# 显示菜单选项
function display_menu() {
clear
echo "==============================="
echo " Linux菜单"
echo "==============================="
for ((i=0; i < ${#menu_items[@]}; i++)); do
echo "$(($i+1)). ${menu_items[$i]}"
done
echo "==============================="
}
# 选择菜单项
function select_menu_item() {
read -p "请选择菜单项: " choice
case $choice in
1)
echo "您选择了 '学生信息管理脚本工具'"
# 在这里编写学生信息管理脚本工具的代码
;;
2)
echo "您选择了 '作者姓名'"
# 在这里打印作者姓名
;;
3)
echo "您选择了 '学号'"
# 在这里打印学号
;;
4)
echo "您选择了 '操作项'"
# 在这里编写操作项的代码
;;
*)
echo "无效的菜单选项"
;;
esac
}
# 循环打印界面符号
function print_symbols() {
for ((i=0; i < SYMBOL_COUNT; i++)); do
echo -n "="
done
echo ""
}
# 主程序
function main() {
while true; do
display_menu
print_symbols
select_menu_item
print_symbols
read -p "按 Enter 键继续..."
done
}
# 运行主程序
main
退出脚本的方法是按下Ctrl+C组合键。这将终止运行并退出菜单。
注意:在执行该脚本之前,需要给它执行权限。可以使用以下命令赋予执行权限:
chmod +x menu.sh
这样你就可以通过运行以下命令来执行脚本:
./menu.sh
脚本会循环显示菜单选项,并等待用户输入。用户选择菜单项后,将打印出对应的操作。之后,脚本会等待用户按Enter键继续,然后重新显示菜单。这个过程会一直循环下去,直到用户按下Ctrl+C组合键退出脚本。
以上代码是通过使用一个只读变量来控制界面符号数量,使用for循环打印界面符号,并使用case语句来选择和执行菜单项的操作。
【相关推荐】