Shell脚本检查IP格式及mysql操作实例

   这篇文章主要介绍了Shell脚本检查IP格式及mysql操作实例,本文直接给出脚本代码,需要的朋友可以参考下

  还是cronjob的一部分,就是在Rails的定时任务里,后台交互运行

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48

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
return 1
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
 
for loop in $a $b $c $d
do
if [ $loop -ge 255 ] || [ $loop -lt 0 ]; then
return 2
fi
done
fi
 
}
 
 
ConfigureDefaultRegion() {
echo "Please input Region ip"
ret=1
while [ $ret != 0 ]
do
read region_ip
CheckIPAddress $region_ip
ret=$?
#echo $ret
if [ $ret = 1 ]; then
echo "Wrong IP address, please reinput Region IP:"
fi
done
/usr/bin/mysql -u root realworx_production -e "update regions set ip='$region_ip' where id=1" 1>/dev/null 2>/dev/null
if [ $? = 0 ]; then
/usr/bin/mysql -u root realworx_production -e "update config_params set val=1 where ident=55" 1>/dev/null 2>/dev/null
echo "set '$region_ip' as Default and Admin Region IP"
else
val=`/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/null
region_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. "
fi
echo "Region Setting Successfull."
}

时间: 2024-09-17 04:39:55

Shell脚本检查IP格式及mysql操作实例的相关文章

Shell脚本检查IP格式及mysql操作实例_linux shell

还是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 return 1 else a=`echo $1 | awk -F. '{print $1}'` b=`echo $1 | awk -F. '{print $2}'

Shell脚本判断IP是否合法性(多种方法)

运维角度来说,写shell脚本经常会遇到判断输入的值是否合法,比如IP.邮件地址等.那么,根据自身写脚本中总结的判断IP合法性脚本分享给网友,遇到时能有所参考. 思路:IP由四位数字组成,以点分割,每个字段不能大于255,必须符合这种格式 方法1: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #!/bin/bash # blog: http://lizhenliang.blog.51cto.com    function check_ip() 

shell脚本echo输出不换行功能增强实例_linux shell

这是第8/101个脚本 There are as many ways to solve this quirky echo problem as there are pages in this book. One of my favorites is very succinct: function echon { echo "$*" | awk '{ printf "%s" $0 }' } You may prefer to avoid the overhead in

Shell脚本编程中常用的数学运算实例_linux shell

这部分主要讨论数学相关的shell脚本编程. 加法运算 新建一个文件"Addition.sh",输入下面的内容并赋予其可执行的权限. 复制代码 代码如下: #!/bin/bash echo "Enter the First Number: " read a echo "Enter the Second Number: " read b x=$(expr "$a" + "$b") echo $a + $b =

shell脚本删除一天前的备份文件实例

今天公司要求我把服务器上的备份文件拷到内部服务器上,并且只要最新的,好吧,运维人员的理想目标是什么,就是能够让电脑做的事,决不自己来做.   系统:centos 5.9   环境:备份文件在/root/bak下,当然我是虚拟机上进行的测试 1.备份文件环境图 2.shell脚本内容:  代码如下 复制代码  #!/bin/bash   location="/root/bak/"  find $location -type f -mtime +1|xargs rm -f 运行脚本后的图

Linux Shell脚本之利用mysqldump备份MySQL数据库(详细注解)

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dgd2010.blog.51cto.com/1539422/1678653 设计该脚本的一些设计.编写考虑: 该脚本适用于编译安装mysql和通过yum或apt-get等安装方式 该脚本可以反复执行,不会重复覆盖数据 可增加,删除N天前的备份以节省磁盘空间 充分利用mysqldump的自带锁表功能.刷新日志.复制等功能 利用mysqldump命令备份MySQL数据库的脚本(不带

Shell脚本实现IP地址合法性判断_linux shell

做unix/linux下的开发,脚本编写的功力是少不了的,作为shell编程,也是博大精深的一个技术领域,这里为了学习,就写一个简单的判断IP地址是否合法的微型脚本程序,这个小程序也是非常有用的. IP地址是32位的,可以由4个十进制数值表示,每个数值的范围都是0~255. 复制代码 代码如下: #!/bin/bash # Test an IP address for validity: # Usage: #      valid_ip IP_ADDRESS #      if [[ $? -e

Shell脚本判断IP地址是否合法的方法_linux shell

使用shell校验IP地址合法性 使用方法: 复制代码 代码如下: [root@yang python]# bash check_ip.sh IP地址 执行结果:返回值0校验合法,非0不合法.shell代码: 复制代码 代码如下: [root@yang python]# vi check_ip.sh #!/usr/bin/shCheckIPAddr(){echo $1|grep "^[0-9]\{1,3\}\.\([0-9]\{1,3\}\.\)\{2\}[0-9]\{1,3\}$"

shell 脚本检查某目录下php文件语法

 代码如下 复制代码 check_php_syntax.sh #!/bin/bash # check php syntax if [ $# -lt 1 ];then     echo 'Usage: ' $0  'directory';     exit fi if [ ! -d $1 ];then     echo $1  'not a directory,please check!';     exit fi directory=$1 temp_file="/tmp/file$$"