#/bin/bash
#score.sh
#color function
colour()
{
case $1 in
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"
;;
*)echo "invalid colour"
;;
esac
}
#search function
search()
{
colour black_white
clear
echo -e "please enter name >>>\c"
read NAME
#wujilu
if [ ! -f ./record ];then
echo"you must have some scores before you can seach!"
sleep 10
clear
return
fi
if [ -z $NAME ];then
echo "you did't enter a name!"
echo -e "please enter name >>>\c"
read NAME
fi
grep -i "$NAME" ./record 2> /dev/null
case $? in
1)echo "name not in record!"
;;
2)echo "you did't enter name to search!"
sleep 10
search
esac
}
#add record
add()
{
clear
echo -e "enter name and score of a record:\c"
if [ ! -f ./record ];then
touch record
fi
read NEWNAME
echo "$NEWNAME">./record
sort -o ./record ./record
}
#delete
delete()
{
clear
echo -e "please enter name >>>c"
read NAME
if [ ! -f ./record ];then
echo "This name is not in record"
else
cp record record.bak
rm -f record
grep -v "$NAME" ./record.bak >record
rm -f record.bak
fi
}
#display record
display()
{
colour black_white
more ./record
sleep 10
}
#edit
edit()
{
vi ./record
}
#help pingmu
help()
{
clear
colour black_cyan
echo "This is a student's record program by unix shell language"
}
#exit
quit()
{
clear
colour black_white
exit
}
clear
while true
do
colour red_yellow
echo "##########################################"
echo "# 1:search a record #"
echo "# 2:add a record #"
echo "# 3:delete a record #"
echo "# 4:display all record #"
echo "# 5:edit record with vi #"
echo "# H:help screen #"
echo "# Q:exit pragma #"
echo "##########################################"
colour black_green
echo -e -n "\tplease enter your choice [1 2 3 4 5 H Q]:
\c"
read CHOICE
case $CHOICE in
1)search
;;
2)add;
;;
3)delete;clear
;;
4)display
;;
5)edit;clear
;;
H)help
;;
Q)quit
;;
*)echo "please enter valid mode"
;;
esac
sleep 10
clear
done
标题名称:简易的学生成绩管理:增删查
浏览路径:
http://cxhlcq.com/article/jcpgoo.html