Chinaunix首页 | 论坛 | 博客
  • 博客访问: 278835
  • 博文数量: 76
  • 博客积分: 1414
  • 博客等级: 中尉
  • 技术积分: 702
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-14 21:05
文章分类

全部博文(76)

文章存档

2013年(8)

2012年(68)

我的朋友

分类: LINUX

2012-04-06 23:35:25


点击(此处)折叠或打开

  1. ##指定时间后结束指定程序
  2. sh -c "sleep 4 && kill -9 $(pgrep basename `echo $app|awk '{print $1}'`)" &
  3. for i in {1..1000};do
  4.   echo $i
  5.   sleep 1
  6. done

  7. 检测当前脚本是否已经运行,如果已经运行,则退出
  8. ps -ef|grep $(basename $0|sed 's/\./\\\./g')|grep -v grep|grep -v $$
  9. if [ "$?" -eq 0 ];then
  10.   echo scripts already running...
  11.   exit 1
  12. fi

  13. 测试ip是否可以ping通
  14. check_ping(){
  15.   ip=$1
  16.   shift
  17.   case $1 in
  18.     -c)
  19.      loss_Con=$2
  20.      shift 2 ;;
  21.     -d)
  22.      delay_Thold=$2
  23.      shift 2 ;;
  24.     *|-h|--help)
  25.      echo Usage:$(basename $0) '{host} {-c count of ping} {-d delay_Thold}'
  26.      return 1
  27.      ;;
  28.   esac
  29.   #loss_Con=4
  30.   #delay_Thold=20
  31.   count=0
  32.   for ((i=0;i<$loss_Con;i++));do
  33.     DL=$(ping $ip -c 1 -W 1|grep from|awk '{print $7}'|awk -F"=" '{print $2}'|awk -F"." '{print $1}')
  34.     if [ -z "$DL" ] || [ "$DL" -ge $delay_Thold ];then
  35.       count=$(($count+1))
  36.     fi
  37.   done
  38.   if [ "$count" -eq $loss_Con ];then
  39.     return 1
  40.   else
  41.     return 0
  42.   fi
  43. }

  44. check_ping(){
  45.   ip=$1 #1.1.1.1
  46.   loss_Con=$2 #2
  47.   delay_Thold=$3 #4
  48.   count=0
  49.   for ((i=0;i<$loss_Con;i++));do
  50.     DL=$(ping $ip -c 1 -W 1|grep from|awk '{print $7}'|awk -F"=" '{print $2}'|awk -F"." '{print $1}')
  51.     if [ -z "$DL" ] || [ "$DL" -ge $delay_Thold ];then
  52.       count=$(($count+1))
  53.     fi
  54.   done
  55.   if [ "$count" -eq $loss_Con ];then
  56.     return 1
  57.   else
  58.     return 0
  59.   fi
  60. }

  61. check_ping(){
  62.   ip=$1
  63.   shift
  64.   case $1 in
  65.     -c)
  66.      loss_Con=$2
  67.      shift 2 ;;
  68.     -d)
  69.      delay_Thold=$2
  70.      shift 2 ;;
  71.     *|-h|--help)
  72.      echo Usage:$(basename $0) '{host} {-c count of ping} {-d delay_Thold}'
  73.      return 1
  74.      ;;
  75.   esac
  76.   #loss_Con=4
  77.   #delay_Thold=20
  78.   count=0
  79.   for ((i=0;i<$loss_Con;i++));do
  80.     DL=$(ping $ip -c 1 -W 1|grep from|awk '{print $7}'|awk -F"=" '{print $2}'|awk -F"." '{print $1}')
  81.     if [ -z "$DL" ] || [ "$DL" -ge $delay_Thold ];then
  82.       count=$(($count+1))
  83.     fi
  84.   done
  85.   if [ "$count" -eq $loss_Con ];then
  86.     return 1
  87.   else
  88.     return 0
  89.   fi
  90. }

  91. ##把字符串中的特殊字符加上 \
  92. zhuanyi(){
  93.   echo $1|awk '
  94. BEGIN{
  95. FS=""
  96. }
  97. {
  98. str="([]."
  99. for(i=1;i<=NF;i++)
  100. {
  101.     if(index(str,$i) == 0)
  102.     {
  103.         printf $i
  104.     }
  105.     else
  106.     {
  107.         printf "\\"$i
  108.     }
  109. }
  110. printf "\n"
  111. }'
  112. }

  113. 有三个参数,第一个查找目标字符串,第二个要替换成的字符串,第三个操作的文件

  114. addarg(){
  115.   PATTERN=$(zhuanyi $1)
  116.   REPLACE=$2
  117.   FILE=$3
  118.   REPLACE1=$(echo $REPLACE1|awk -F"=" '{print $1"="}')
  119.   grep ^$REPLACE1 $FILE > /dev/null|| sed -i '/'$PATTERN'/ a '$REPLACE'' $FILE
  120. }
  121. addarg [mysqld] slave-skip-error=all my.cnf 在my.cnf中 [mysqld] 所在行在下面添加 slave-skip-error=all
  122. slave-skip-error=all

阅读(480) | 评论(0) | 转发(0) |
0

上一篇:shell case

下一篇:shell mysql

给主人留下些什么吧!~~