shell编程如何实现学生成绩管理系统

小编给大家分享一下shell编程如何实现学生成绩管理系统,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

具体内容如下

主要函数:

colour () 设置界面颜色search () 查询学生信息add() 增加记录delete() 删除记录display() 显示所有记录edit() 编辑help() 帮助quit() 退出

使用截图:

主界面

shell编程如何实现学生成绩管理系统

1、添加

shell编程如何实现学生成绩管理系统

2、显示全部

shell编程如何实现学生成绩管理系统

3、查找

shell编程如何实现学生成绩管理系统

4、删除

删除存在的人:

shell编程如何实现学生成绩管理系统

删除不存在的人:

shell编程如何实现学生成绩管理系统

5、显示全部

shell编程如何实现学生成绩管理系统

参考代码:

#!/bin/bash

#colour函数
colour()
{
#格式为背景:前景m,主要实现屏幕颜色显示
case$1in
black_white)#背景为黑色,前景为白色
echo-e"\033[40;37m"
;;
black_green)#背景为黑色,前景为绿色
echo-e"\033[40;32m"
;;
black_cyan)#背景为黑色,前景为青色
echo-e"\033[40;36m"
;;
red_yellow)#背景为红色,前景为黄色
echo-e"\033[41;33m"
;;
yellow_blue)#背景为黄色,前景为蓝色
echo-e"\033[43;34m"
;;
esac
}

#查询函数
search()
{
colourblack_white
clear
echo-e"PleaseEnterName>>>\c"
readNAME
#如果无记录时
if[!-f./record];then
echo"Youmushhavesomescoresbeforeyoucansearch!"
sleep2
clear
return
fi

#没有输入名字查询时候
if[-z"$NAME"];then
echo"Youdidn'tenteraname!"
echo-e"PleaseEnterName>>>\c"
fi
echo"你查询的信息是:$NAME"


grep"$NAME"./record2>/dev/null

case"$?"in
1)echo"Namenotinrecord."
;;
2)echo"Youdidn'tenteranametosearch."
sleep2
search#继续查询
;;
esac
}

#增加记录函数
add()
{
clear
echo"Enternameandscoreofarecord."
echo-e"\c"

if[!-f./record];then
touchrecord
fi

readNEWNAME
echo"$NEWNAME">>./record

#排序后写回文件
sort-o./record./record
echo"添加成功"
sleep2
}


#删除记录函数
delete()
{
clear
echo-e"PleaseEnterName>>>"
readNAME

if[!-f./record];then
echo"记录为空请先添加!"
else
cprecordrecord.bak

grep"$NAME"./record.bak>/dev/null
if[$?!=0];then
echo"此人不存在"
else
#-v表示not
grep-v"$NAME"./record.bak>record
echo"删除成功"
fi
rm-frecord.bak
fi
sleep1
}

#显示所有记录
display()
{
colourblack_white
more./record
}

#利用vim编辑器编译
edit()
{
vim./record
}

#屏幕帮助函数
help()
{
clear
colourblack_cyan
echo"Thisisastudent'srecordprogramby!"
}

#退出程序
quit()
{
clear
colourblack_white
exit
}

clear
while:
do
colourred_yellow
echo"***********************************************************"
echo"*STUDENT'SRECORDMENU*"
echo"***********************************************************"
colouryellow_blue
echo"###########################################################"
echo"#1.查找#"
echo"#2.添加#"
echo"#3.删除#"
echo"#4.显示全部#"
echo"#5.编辑记录#"
echo"#H:HelpScreen#"
echo"#Q:ExitProgram#"
echo"###########################################################"

colourblack_green
echo-e-n"PleaseEnterYourChoice[1,2,3,4,5,H,Q]:\c"
readchoice

case$choicein
1)search
;;
2)add;clear
;;
3)delete;clear
;;
4)display
;;
5)edit;clear
;;
H|h)help
;;
Q|q)quit
;;
*)echo"InvalidChoice!"
sleep2
clear
;;
esac
done

总结:

1、sort -o file file 可以将本文件排序后再写回2、grep -v "string" file 可以将除string 之外的信息过滤出来 3、进一步熟悉流程控制函数等概念。

看完了这篇文章,相信你对“shell编程如何实现学生成绩管理系统”有了一定的了解,如果想了解更多相关知识,欢迎关注恰卡编程网行业资讯频道,感谢各位的阅读!

发布于 2021-05-30 14:06:53
收藏
分享
海报
0 条评论
174
上一篇:PHP关键特性之命名空间的示例分析 下一篇:Java中怎么实现带GUI界面的猜数字游戏
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码