Shell脚本检查IP格式及mysql操作实例
还是cronjob的一部分,就是在Rails的定时任务里,后台交互运行
CheckIPAddress() { echo$1|grep"^[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$">/dev/null if[$?=1];then return1 else a=`echo$1|awk-F.'{print$1}'` b=`echo$1|awk-F.'{print$2}'` c=`echo$1|awk-F.'{print$3}'` d=`echo$1|awk-F.'{print$4}'` #echo$a$b$c$d forloopin$a$b$c$d do if[$loop-ge255]||[$loop-lt0];then return2 fi done fi } ConfigureDefaultRegion(){ echo"PleaseinputRegionip" ret=1 while[$ret!=0] do readregion_ip CheckIPAddress$region_ip ret=$? #echo$ret if[$ret=1];then echo"WrongIPaddress,pleasereinputRegionIP:" fi done /usr/bin/mysql-urootrealworx_production-e"updateregionssetip='$region_ip'whereid=1"1>/dev/null2>/dev/null if[$?=0];then /usr/bin/mysql-urootrealworx_production-e"updateconfig_paramssetval=1whereident=55"1>/dev/null2>/dev/null echo"set'$region_ip'asDefaultandAdminRegionIP" else val=`/usr/bin/mysql-urootrealworx_production-e"selectidfromregionswhereip='$region_ip'"|awk'{if($1!="id")print$1}'` /usr/bin/mysql-urootrealworx_production-e"updateconfig_paramssetval='$val'whereident=55"1>/dev/null2>/dev/null region_name=`/usr/bin/mysql-urootrealworx_production-e"selectnamefromregionswhereip='$region_ip'"|awk'{if($1!="name")print$1}'` echo"IPalreadyexists.Soset'$region_name'asAdminRegion." fi echo"RegionSettingSuccessfull." }