shell命令的学生管理系统

shell命令的学生管理系统,有登录和注册功能,有增删查改输出全部学生信息的功能。

#!/bin/bash
#菜单目录
 print_menu()
 {
         clear
         echo "1.输出学生信息"
         echo "2.录入学生信息"
         echo "3.查询学生信息"
         echo "4.删除学生信息"
         echo "5.修改学生信息"
         echo "0.退出系统"
 }
 #学生信息输出
 do_output()
 {
         clear
         echo "所有学生信息如下:"
         more ./my.db
         sleep 2
 }
 #按照学号搜索学生信息
 do_search()
 {
         clear
         echo "请输入需查找学生的学号:"
         read id
         grep -i  "$id||" ./my.db
         sleep 2
 }
 #输入学生信息(学号不能相同,学号唯一)
 do_input()
 {
         clear
         echo "输入学生信息(id name sex age tel)"
         read id name sex age tel
         grep -i "$id||" ./my.db>in.db
         if [ ! -s in.db ];then

                 echo "$id||$name|$sex|$age|$tel">>my.db
         else
                 echo "学号已存在,学号不能重复"
         fi
 }
#根据学号删除学生信息
 do_delete()
 {
         clear
         echo "请输入想删除学生信息的学号:"
         read id
         cp my.db my
         rm -f my.db
         grep -v  "$id||" ./my>my.db
         rm -f my
         echo "删除成功"
         sleep 2
 }
 #根据学号修改学生信息
 do_amend()
 {
         echo "请输入想修改学生的学号:"
         read id
         grep -i "$id||" ./my.db
         echo "请输入修改内容(完整全部的信息,学号不变)"
         read name sex age tel
         cp my.db amend
         rm -f my.db
         grep -v "$id||" ./amend>my.db
         rm -f amend
         echo "$id||$name|$sex|$age|$tel">>my.db
         echo "修改成功"
         sleep 2

 }
 login()
 {
         clear
         echo "请输入用户名 "
         read name
         echo "请输入密码"
         read pw
         echo "$name@$pw">>ab.txt
         echo "注册成功"
 }
opearte()
 {
         print_menu
         echo "请输入操作"
         read val
         case $val in
                 1)do_output;;
                 2)do_input;;
                 3)do_search;;
                 4)do_delete;;
                 5)do_amend;;
                 0)exit;;
         esac
 }
 register()
 {
         clear
         echo "请输入用户名"
         read name
         echo "请输入密码"
         read pw
         grep -i "$name@$pw" ./ab.txt>at.db
         if [ ! -s at.db ];then
                 echo "密码或者用户名错误"
         else
                 while true
                 do
                         opearte
                 done
         fi
 }
 #登录菜单
 menu()
 {
         echo "1.注册用户"
         echo "2.登录系统"
         echo "0.退出系统"
         read val
         case $val in
                 1)
                         login
                         ;;
                 2)
                         register
                         ;;
                 0)
                         exit
                         ;;
         esac
 }
#死循环,不停的执行

menu

  

原文地址:https://www.cnblogs.com/1-2-3-4a/p/11863326.html