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 20:54:16 浏览: 41
好的,下面是一个可能实现上述功能的Bash脚本示例:
```bash
#!/bin/bash
# 成绩上传函数
function add() {
read -p "请输入科目名称: " subject
read -p "请输入成绩: " score
case $subject in
"语文"|"数学"|"英语")
echo "$subject: $score" >> info
echo "成绩上传成功!"
;;
*)
echo "不存在该科目,请重新输入!"
add
;;
esac
}
# 成绩查询函数
function search() {
if [ -f "info" ]; then
cat info
else
echo "暂无成绩记录!"
fi
}
# 主体部分
while true
do
echo "-------------------"
echo "欢迎使用成绩管理系统"
echo "1. 成绩上传"
echo "2. 成绩查询"
echo "3. 退出"
echo "-------------------"
read -p "请选择功能(输入数字): " choice
case $choice in
1)
add
;;
2)
search
;;
3)
echo "再见!"
exit
;;
*)
echo "输入错误,请重新选择!"
;;
esac
done
```
在这个脚本中,我们定义了两个函数 `add()` 和 `search()` 分别用于成绩上传和查询。在主体部分,我们使用一个无限循环来显示成绩管理系统界面和功能选择,并使用 `case` 语句匹配对应的功能模块。选择1时调用 `add()` 函数,选择2时调用 `search()` 函数,选择3时退出脚本,选择其他时提示输入错误并重新选择。其中,成绩上传函数使用 `read` 命令读取用户输入,并使用追加重定向将成绩存入文件 `info` 中,成绩查询函数则直接打开 `info` 文件并输出其中的内容。
阅读全文