Welcome 微信登录

首页 / 操作系统 / Linux / 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/nullif [ $? = 1 ];thenreturn 1elsea=`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 $dfor loop in $a $b $c $ddoif [ $loop -ge 255 ] || [ $loop -lt 0 ]; thenreturn 2fidonefi}ConfigureDefaultRegion() {echo "Please input Region ip"ret=1while [ $ret != 0 ]do read region_ip CheckIPAddress $region_ip ret=$? #echo $ret if [ $ret = 1 ]; thenecho "Wrong IP address, please reinput Region IP:" fidone/usr/bin/mysql -u root realworx_production -e "update regions set ip="$region_ip" where id=1" 1>/dev/null 2>/dev/nullif [ $? = 0 ]; then/usr/bin/mysql -u root realworx_production -e "update config_params set val=1 where ident=55" 1>/dev/null 2>/dev/nullecho "set "$region_ip" as Default and Admin Region IP"elseval=`/usr/bin/mysql -u root realworx_production -e "select id from regions where ip="$region_ip"" | awk "{if ($1 != "id") print $1}"`/usr/bin/mysql -u root realworx_production -e "update config_params set val="$val" where ident=55" 1>/dev/null 2>/dev/nullregion_name=`/usr/bin/mysql -u root realworx_production -e "select name from regions where ip="$region_ip"" | awk "{if ($1 != "name") print $1}"`echo "IP already exists. So set "$region_name" as Admin Region. "fiecho "Region Setting Successfull."}