直接上代码:

#mcore.sh#!bin/bashfunctioncolour(){case$1inblack_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}functionsearch(){colourblack_whiteclearecho-e"pleaseentername>>>\c"readNAMEif[!-f./record];thenecho"youmusthavesomescoresbeforeyoucansearch"sleep2clearreturnfiif[-z"$NAME"];thenecho"youdidntenteraname!"echo-e"pleaseentername>>>\c"readNAMEfigrep-i"$NAME"./record2>/dev/nullcase"$?"in1)echo"Namenotinrecord";;2)echo"youdidintenteranametosearch"search;;esac}functionadd(){clearecho"enternameandscoreofarecord"echo-e"\c"if[!-f./record];thentouchrecordfireadNEWNAMEecho"$NEWNAME">./recordsort-o./record./record}functiondelete(){clearecho-m"pleaseentername>>\c"readNAMEif[!-f./record];thenecho"thisnameisnotinrecord"elsecprecordrecord.bakrm-frecordgrep-v"$NAME"./record.bak>recordrm-frecord.bakfi}functiondisplay(){colourblack_whitemore./record}functionedit(){vi./record}functionhelp(){clearcolourblack_cyanecho"thisisastudentsrecordprogrambylunixshelllanguage"}functionquit(){clearcolourblack_whiteexit}clearwhiletruedocolourred_yellowecho"****************************************"echo"*STUDENTSRECORDMENU*"echo"****************************************"colouryellow_blueecho"****************************************"echo"*1:searcharecord*"echo"*2:addarecord*"echo"*3:deletearecore*"echo"*4:dispalyallrecords*"echo"*5:editrecordwitmvi*"echo"*H:helpscreen*"echo"*Q:exitprogram*"echo"****************************************"colourblack_greenecho-e-n"\tpleaseenteryouchoice1--5,H,Q:\c"readCHOICEcase$CHOICEin1)search;;2)add;clear;;3)delete;clear;;4)display;;5)edit;clear;;H|h)help;;Q|q)quit;;*)echo"invalidchoice";sleep2;clear;;esacdone

运行结果: