ATM取款机系统模拟仿真
来源:互联网 发布:淘宝p图软件手机软件 编辑:程序博客网 时间:2024/04/29 05:00
#!/bin/shHOSTNAME="localhost" #数据库信息PORT="3306"USERNAME="root"PASSWORD=""#数据库名称DBNAME="bank" TABLENAME="user" #两个标记,用于判断是否超过输入flag=1flag1=1#输入帐号密码成功后进行接下来操作main(){echo "Please input what do you want to do ?(1、Balance inquiries 2、Change Password 3、draw money 4 、Deposit 5、exit) " read choice case $choice in #查询余额 1 ) select_sql_money_now="select money from ${TABLENAME} where name='$name'" nowmoney=` mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql_money_now}" |awk '{print $1}'|tail -n1` echo "Balance inquiries is $nowmoney ¥" main;; #修改密码 2) echo "Please input the new password" read newpassword update_sql_password="update $TABLENAME set password=$newpassword where name='$name'" mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${update_sql_password}" main ;; #取款 3) echo "Please input how money do you want draw money" read draw select_sql_money_now="select money from ${TABLENAME} where name='$name'" nowmoney=` mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql_money_now}" |awk '{print $1}'|tail -n1` if [[ $draw -gt $nowmoney ]] then echo "The card money is little" main else let "nowmoney=$nowmoney-$draw" update_sql="update $TABLENAME set money=$nowmoney where name='$name'"; mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${update_sql}" fi main ;;#存款 4)echo "Please input how money do you want Deposit money" read deposit select_sql_money_now="select money from ${TABLENAME} where name='$name'" nowmoney=` mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql_money_now}" |awk '{print $1}'|tail -n1` let "nowmoney=$nowmoney+$deposit" update_sql="update $TABLENAME set money=$nowmoney where name='$name'"; mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${update_sql}" main ;; #退出系统 5) echo "Now you level the system!!" exit ;; esac} #输入密码函数passwordfun(){ read passwordselect_sql_pass="select password from ${TABLENAME} where name='$name'"realpassword=` mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql_pass}" |awk '{print $1}'|tail -n1` if [[ $password -eq $realpassword ]] then main#密码不对,重新输入 elif [[ $password -ne $realpassword ]] then let "flag++" if [[ $flag -gt 4 ]] then echo "you password enter three times ,the system quit !!" exit 0 fi echo "sorry passwors is wrong,Please input password again" passwordfun fi}echo "Please input the card name:" #输入用户名#输入用户函数进行判断namefun(){read name select_sql_name="select name from ${TABLENAME} where name='$name'"real=` mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql_name}" |awk '{print $1}'|tail -n1`if [[ -n $real ]] ; then echo "Please input the password:" passwordfun #帐号不对,重新输入 else let "flag1++" if [[ $flag1 -gt 4 ]] then echo "you name enter three times ,the system quit !!" exit 0 fi echo "sorry name is wrong,Please input name again" namefun fi}namefun