Linux学生成绩管理,Student.sh · biuo/Student----Linux----学生成绩管理系统 - Gitee.com

#!/bin/bash

#增加记录函数

add()

{

clear

echo -e "\033[34m \n—— 请输入姓名和成绩: \c\033[0m"

read NEWNAME

# 没有输入名字查询时候

if [ -z "$NEWNAME" ]; then

echo -e "\033[31m\n—— 还未输入姓名!——\033[0m"

echo -e "\033[34m \n—— 请输入姓名: \c\033[0m"

read NEWNAME

fi

grep "\" ./xinxi > /dev/null

if [ $? = 0 ]; then

echo -e "\033[31m\n\n\n\n\n—— 添加失败,此人已存在!——\033[0m"

else

echo "$NEWNAME" >> ./xinxi

# 排序后写回文件

sort -o ./xinxi ./xinxi

echo -e "\033[32m\n\n\n\n\n—— 添加成功 ——\033[0m"

fi

sleep 2

}

#删除记录函数

delete()

{

clear

if [ ! -f ./xinxi ]; then

echo -e "\033[31m\n—— 删除失败!原信息为空,无信息可删除!—— \033[0m"

sleep 2

clear

return

fi

echo -e "\033[34m\n—— 请输入要删除的学生的姓名:\c\033[0m"

read NAME

# 没有输入名字查询时候

if [ -z "$NAME" ]; then

echo -e "\033[31m\n—— 还未输入姓名!——\033[0m"

echo -e "\033[34m\n—— 请输入姓名: \c\033[0m"

read NAME

fi

cp xinxi xinxi.bak

grep "\" ./xinxi.bak > /dev/null

if [ $? != 0 ]; then

echo -e "\033[31m\n\n\n\n\n—— 此人本不存在,删除失败 ——\033[0m"

else

grep -v "\" ./xinxi.bak > xinxi

echo -e "\033[32m\n\n\n\n\n—— $NAME的信息删除成功! ——\033[0m"

fi

rm -f xinxi.bak

sleep 2

}

#查询函数

search()

{

clear

#检查文件是否有意义

if [ ! -f ./xinxi ]; then

echo -e "\033[31m\n—— 查询失败!未曾输入信息,无信息可查询!——\n\033[0m"

sleep 2

clear

return

fi

echo -e "\033[34m \n—— 请输入姓名: \c\033[0m"

read NAME

# 没有输入名字查询时候

if [ -z "$NAME" ]; then

echo -e "\033[31m\n—— 还未输入姓名!——\033[0m"

echo -e "\033[34m\n—— 请输入姓名: \c\033[0m"

read NAME

fi

echo -e "\n———————————————————查询结果————————————————————\n"

grep "\" ./xinxi 2> /dev/null

if [ $? != 0 ]; then

echo -e "\033[31m\n\n\n\n\n—— 查无此人——\033[0m"

fi

echo -e "\n———————————————————————————————————————————————\n\n"

}

#显示所有记录

display()

{

clear

if [ ! -f ./xinxi ]; then

echo -e "\033[31m\n—— 显示失败!原信息为空,无信息可显示!——\033[0m "

sleep 2

clear

return

fi

echo -e "\n———————————————————学生信息————————————————————\n"

cat ./xinxi

echo -e "\n———————————————————————————————————————————————\n\n"

}

#利用vim编辑器编译

edit()

{

clear

vim ./xinxi

}

#退出程序

quit()

{

clear

exit

}

clear

while :

do

echo "————————————菜单选项———————————"

echo "| 1. 增加学生信息 |"

echo "| 2. 删除学生信息 |"

echo "| 3. 查询学生信息 |"

echo "| 4. 显示全部信息 |"

echo "| 5. 批量修改信息 |"

echo "| 0: 退出系统 |"

echo "———————————————————————————————"

echo -e -n "\033[34m—— 请选择选项: \c \033[0m"

read choice

case $choice in

1 ) add; clear

;;

2 ) delete; clear

;;

3 ) search

;;

4 ) display

;;

5 ) edit; clear

;;

0 ) quit

;;

* ) echo "\033[31m—— 输入选择错误,请重新输入! ——\033[0m"

sleep 2

clear

;;

esac

done

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值