壳牌循环和函数引用

   # !/bin/bash   #菜单   function 菜单(){   echo  -e “\ t \ \ t * * * * * * * * * * * * * * * * * * * * * * * *”   echo  -e “\ t \ \ t *,,,,,,,操作数据库,,,,,*”   echo  -e “\ t \ \ t * * * * * * * * * * * * * * * * * * * * * * * *”   echo  -e “\ t \ \ t *, 1,登录数据库,,,,,,,,*”,,,   echo  -e “\ t \ \ t *, 2,创建用户或增加权限*”   echo  -e “\ t \ \ t *, 3, sql语句操作数据库,*”   echo  -e “\ t \ \ t *, 4,更改用户密码,,,,,,*”   echo  -e “\ t \ \ t *, 0,退出,,,,,,,,,,,,,,*”   echo  -e “\ t \ \ t * * * * * * * * * * * * * * * * * * * * * * * *”   }   #输入mysql的用户名和密码   function 输入(){   echo  -e “\ t \ \ t请登录数据库”   read  -p “请输入mysql用户名:”,用户   read  -s  -p “请输入mysql的密码:”,密码   }   #判断输入的用户名密码是否正确   function  panduan () {   mysql  user 美元- u - p passwd 美元;-e  exit  1在/dev/null  2祝辞,1   if  [, $ ? !=, 0,)   然后   echo  -e “\ n \ t \ \ t用户名或密码错误,请重新输入!”   输入   其他的   echo  -e “\ n \ t \ \ t数据库登录成功!”   fi   }   #创建用户并授权   function  createuser () {   echo  -e “已存在的用户如下,如果输入的用户已存在,则增加该用户到权限”   mysql  user 美元- u - p passwd 美元;-e “select 用户,host 得到mysql.user;”   read  -p “请输入要创建的用户名:”,列出   read  -s  -p “请输入新用户的密码:“,newpasswd   echo  -e “请输入此用户的主机名(%代表所有的主机都能用此账户访问数据库,具体到某几个主机名中间用英文的逗号隔开,如localhost, 192.168.1.1):“   read 主机名   echo  -e “请输入授予此用户操作数据库的权限(所有代表全部,具体到某几个权限中间用英文的逗号隔开,如创建、选择):”,   格兰特read    echo  -e “请输入授予此用户的访问的库和表的权限(*。*代表全部的库和表,具体到某几个库中间用英文的逗号隔开,如database1.table1, database2.table2):“   read 数据库   mysql  user 美元- u - p passwd 美元;-e “grant  grant 美元;提醒database 美元;用“分类列出美元”@“主机名美元”,identified  by “newpasswd美元”;“,2在/tmp/error.txt   if  [, -s /tmp/error.txt ]   然后   echo  -e “\ \ t数据库的权限或库名,表名输入错误!”   其他的   echo  -e “\ n \ t \ \ t用户创建成功!”   fi   }   #命令行操作数据库   function 订单(){   while 真正的   做   echo  -e “\ n”   echo  -e “请输入mysql语句:“   read 订单   mysql  user 美元- u - p passwd 美元;-e “秩序”美元,2在/dev/null   if [,美元? !=0,)   然后   echo  -e “\ t \ \ tsql语句输入错误!”   fi   完成   }   #修改密码   function 改变(){   echo  -e “数据库中已存在的用户如下:“   摘要=' mysql  - u user 美元;- p passwd 美元;-e “select  distinct  user 得到mysql.user;“| awk “{print  1美元}”| sed  -n “2美元p ' '   echo 摘要美元   while 真正的   做   echo  -e “请输入要修改的用户名:“   read 最有用处   echo  -e “请输入新密码”   read  -s  cpasswd   echo  -e “请再次输入新密码”   read  -s  zpasswd   echo 摘要美元| grep  cuser>美元/tmp/tuser.txt   if  [,“cpasswd美元”=,"美元zpasswd ", -a  -s /tmp/tuser.txt 】   然后   mysql  user 美元- u - p passwd 美元;& lt; & lt; EOF   update  mysql.user  set 密码=密码(cpasswd美元),where 用户=癱us美元”;   flush 特权;   EOF   echo  -e “\ t \ \新台币cus用户的密码修改成功!”   elif  [, cpasswd美元“!=,"美元zpasswd ",)   然后   echo  -e “\ t \ \ t两次输入的密码不一致!”   其他的   echo  -e “\ t \ \ t你输入的用户不存在!”   fi   完成   }   while 真正的做   菜单   read  -p “请输入数字(0 ~ 4):“,我   case 小姐:美元   1)   while 真正的   做   输入   mysql  user 美元- u - p passwd 美元;2在/tmp/mysql.txt   if  [, -s /tmp/mysql.txt ]   然后   echo  -e “\ n \ t \ \ t用户名或密码错误,请重新输入!”   其他的   打破   fi   完成   ;;   2)   输入   panduan   createuser   ;;   3)   输入   订单   ;;   4)   输入   panduan   改变   ;;   0)   exit  0;;   *)   echo  -e “\ t \ \ t请输入有效数字!”   ;;   esac   以前做

壳牌循环和函数引用