Linux趣事 -- (2.4)学生信息管理系统

这篇是在前面三篇的基础上继续完善学生信息管理系统的功能。

(1)http://blog.csdn.net/wjf_1997/article/details/78474118
(2)http://blog.csdn.net/wjf_1997/article/details/78502039
(3)http://blog.csdn.net/wjf_1997/article/details/78513086

实现功能:修改

一、功能描述

修改功能从两个方面进行数据的修改,涉及到的函数有三个:

(1)update_stuName_info():通过学生编号更新学生的姓名

(2)update_stuCollege_info():通过学生编号更新学生的学院

二、代码

2.1 update_stuName_info()

update_stuName_info(){

    show_stu_info;
    echo "请输入要修改信息的学生编号(默认仅可以修改自己的信息):"
    read studentNo
    export nowLine=0;
    stringLine=`grep $studentNo $DBStudentInfoPath`
    stuName=`echo "$stringLine" | awk -F ',' '{print $2}'`
    stuCollegeNo=`echo "$stringLine" | awk -F ',' '{print $3}'`
    studentSay=`echo "$stringLine" | awk -F ',' '{print $4}'`
    echo "要更新的学生信息记录为:$stringLine"
    echo "请输入新的名字:"
    read newStudentName 
    while read line
    do
        lineStudentNo=${line/,*/}
        export nowLine=$(($nowLine+1))
        if [ "$lineStudentNo" = "$studentNo" ]; then
        {
            sed "$nowLine"d $DBStudentInfoPath > $DBStudentInfoPath"_back"
            mv $DBStudentInfoPath"_back" $DBStudentInfoPath       
            echo "$studentNo,$newStudentName,$stuCollegeNo,$studentSay" >> $DBStudentInfoPath
            echo "更新成功!"
            show_stu_info;
        }
        fi
    done<$DBStudentInfoPath
}

2.2 update_stuCollege_info()

update_stuCollege_info(){

    show_stu_info;
    echo "请输入要修改信息的学生编号(默认仅可以修改自己的信息):"
    read studentNo
    export nowLine=0;
    stringLine=`grep $studentNo $DBStudentInfoPath`
    stuName=`echo "$stringLine" | awk -F ',' '{print $2}'`
    stuCollegeNo=`echo "$stringLine" | awk -F ',' '{print $3}'`
    studentSay=`echo "$stringLine" | awk -F ',' '{print $4}'`
    echo "要更新的学生信息记录为:$stringLine"
    echo "请输入新学院编号:"
    read newstuCollegeNo
    while read line
    do
        lineStudentNo=${line/,*/}
        export nowLine=$(($nowLine+1))
        if [ "$lineStudentNo" = "$studentNo" ]; then
        {
            sed "$nowLine"d $DBStudentInfoPath > $DBStudentInfoPath"_back"
            mv $DBStudentInfoPath"_back" $DBStudentInfoPath       
            echo "$studentNo,$stuName,$newstuCollegeNo,$studentSay" >> $DBStudentInfoPath
            echo "更新成功!"
            show_stu_info;
        }
        fi
    done<$DBStudentInfoPath
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值