linux基于shell编写学生管理系统代码
时间: 2023-08-11 20:16:47 浏览: 171
以下是一个简单的基于shell编写的学生管理系统代码示例:
```bash
#!/bin/bash
# 定义学生信息数组
declare -A student_array
# 添加学生信息
function add_student() {
read -p "请输入学生学号:" id
read -p "请输入学生姓名:" name
read -p "请输入学生年龄:" age
read -p "请输入学生性别:" gender
read -p "请输入学生手机号:" phone
# 判断学号是否已存在
if [[ ${student_array[$id]} ]]; then
echo "该学号已存在!"
else
# 将学生信息添加到数组中
student_array[$id]="$name|$age|$gender|$phone"
echo "添加学生信息成功!"
fi
}
# 删除学生信息
function delete_student() {
read -p "请输入要删除的学生学号:" id
# 判断学号是否存在
if [[ ${student_array[$id]} ]]; then
unset student_array[$id]
echo "删除学生信息成功!"
else
echo "该学号不存在!"
fi
}
# 修改学生信息
function modify_student() {
read -p "请输入要修改的学生学号:" id
# 判断学号是否存在
if [[ ${student_array[$id]} ]]; then
read -p "请输入学生新姓名:" name
read -p "请输入学生新年龄:" age
read -p "请输入学生新性别:" gender
read -p "请输入学生新手机号:" phone
# 更新学生信息
student_array[$id]="$name|$age|$gender|$phone"
echo "修改学生信息成功!"
else
echo "该学号不存在!"
fi
}
# 查询学生信息
function query_student() {
read -p "请输入要查询的学生学号:" id
# 判断学号是否存在
if [[ ${student_array[$id]} ]]; then
echo "学号:$id"
echo "姓名:$(echo ${student_array[$id]} | cut -d '|' -f 1)"
echo "年龄:$(echo ${student_array[$id]} | cut -d '|' -f 2)"
echo "性别:$(echo ${student_array[$id]} | cut -d '|' -f 3)"
echo "手机号:$(echo ${student_array[$id]} | cut -d '|' -f 4)"
else
echo "该学号不存在!"
fi
}
# 显示菜单
function show_menu() {
echo "====================="
echo "学生管理系统"
echo "1. 添加学生信息"
echo "2. 删除学生信息"
echo "3. 修改学生信息"
echo "4. 查询学生信息"
echo "0. 退出系统"
echo "====================="
}
# 主程序
while true
do
show_menu
read -p "请输入操作编号:" choice
case "$choice" in
1) add_student;;
2) delete_student;;
3) modify_student;;
4) query_student;;
0) exit;;
*) echo "输入有误,请重新输入!";;
esac
done
```
该代码实现了学生管理系统的基本功能,包括添加学生信息、删除学生信息、修改学生信息、查询学生信息等操作。使用了shell的语法和命令,例如:declare、read、if、case、unset、echo、cut等。
需要注意的是,该代码仅为示例代码,实际应用中还需要进行更加严谨的错误处理和安全性检查。
阅读全文