2、功能模块 1)成绩上传函数add(){}:利用read命令读取上传的科目和成绩; case语句用来判断选择哪个科目,然后使用追加重定向将成绩存入文件info 2)成绩查询函数search(){}:直接打开存放成绩的文件info 3、脚本主体部分,包含以下内容: 1)使用while循环重复执行脚本主体内容; 2)输出成绩管理系统界面和选择的界面,1、成绩上传 2、成绩查询 3、退出; 3)要求使用case匹配对应的功能模块;选择1,调用成绩上传函数;选择2,调用成绩查询函数;选择3,退出shell;选择其他,提示输入错误;
时间: 2023-11-22 21:53:59 浏览: 28
以下是一个简单的成绩管理系统的Shell脚本示例:
```bash
#!/bin/bash
# 成绩上传函数
function add() {
read -p "请输入科目名称:" subject
read -p "请输入成绩:" score
case $subject in
"语文")
echo "$score" >> info_chinese
echo "成绩已上传!"
;;
"数学")
echo "$score" >> info_math
echo "成绩已上传!"
;;
"英语")
echo "$score" >> info_english
echo "成绩已上传!"
;;
*)
echo "科目不存在!"
;;
esac
}
# 成绩查询函数
function search() {
read -p "请输入要查询的科目:" subject
case $subject in
"语文")
echo "语文成绩如下:"
cat info_chinese
;;
"数学")
echo "数学成绩如下:"
cat info_math
;;
"英语")
echo "英语成绩如下:"
cat info_english
;;
*)
echo "科目不存在!"
;;
esac
}
# 主体部分
while true
do
echo "欢迎使用成绩管理系统!请选择以下操作:"
echo "1. 成绩上传"
echo "2. 成绩查询"
echo "3. 退出"
read -p "请输入数字选择操作:" choice
case $choice in
1)
add
;;
2)
search
;;
3)
echo "再见!"
exit 0
;;
*)
echo "输入错误,请重新输入!"
;;
esac
done
```
该脚本包含了三个功能模块:成绩上传、成绩查询和退出。使用while循环实现了重复执行脚本主体内容的功能。
在成绩上传函数中,使用read命令读取上传的科目和成绩,使用case语句判断选择哪个科目,然后使用追加重定向将成绩存入对应的文件中。
在成绩查询函数中,使用read命令读取要查询的科目,使用case语句判断选择哪个科目,然后使用cat命令打开对应的文件并输出其中的内容。
在脚本主体部分中,使用echo命令输出成绩管理系统的界面和选择的界面,使用case匹配对应的功能模块,选择1调用成绩上传函数,选择2调用成绩查询函数,选择3退出shell,选择其他提示输入错误。