zoukankan      html  css  js  c++  java
  • while语法命令

    while循环

    vwhile CONDITION; do 

     循环体  

     done

    vCONDITION:循环控制条件;进入循环之前,先做一次判 断;每一次循环之后会再次做判断;条件为“true”,则执行 一次循环;直到条件测试状态为“false”终止循环 v因此:CONDTION一般应该有循环控制变量;而此变量的值 会在循环体不断地被修正 v进入条件:CONDITION为true

    v退出条件:CONDITION为false

     

    监控程序 是否在线。上面这图是监控http服务是否 开启。

     

    Ss -nt 监控网络

     

    监控网络之后查看不良记录,是否提出禁用部分超额ip。里面的num 和ip 都是变量,通过空格隔开。    

     

    如果不满足这个条件就进入60秒休眠状态,就什么都不操作,等待下一次运行

     

    这是被禁用的IP。

     

    解除被禁用的ip。

     

    显示 链接失败的ip。

    While 是运行判断正确无限循环。

    特殊用法

    vwhile循环的特殊用法(遍历文件的每一行):

      while read line; do  

    循环体

    创建无限循环

     vwhile true; do

     

    done < /PATH/FROM/SOMEFILE

    v双小括号方法,即((…))格式,也可以用于算术运算

    v双小括号方法也可以使bash Shell实现C语言风格的变量操作

     I=10

     ((I++))

    计算1到10的和

    i=1
    sum=0
    while ((i<=10));do
        let sum+=i
        let ++i
    done
    echo $sum

    读取文件
    经典的用法是搭配重定向输入,读取文件的内容。
    打印出使用bash的用户

    while read line;do
        bashuser=`echo $line | awk -F: '{print $1,$NF}' | grep 'bash' | awk '{print $1}'`
        #jugement Bashuser is null or not and print the user who use bash shell
        if [ ! -z $bashuser ];then
            echo "$bashuser"
        fi
    done < "/etc/passwd"

    通过管道传递给{}(同样适用于其他语句)
    通过管道把命令组丢给{}
    打印出使用bash的用户

    cat /etc/passwd | {
    while read line;do
        #use if statement jugement bash shell user  and print it
        if [ "`echo $line | awk -F: '{print $NF}'`" == "/bin/bash" ];then
            bashuser=`echo $line | awk -F: '{print $1}'`
            echo "$bashuser"
        fi
    done
    }


  • 相关阅读:
    安卓任意两个或多个Fragment之间的交互与刷新界面
    内存溢出和内存泄漏
    求直方图围成的最大矩形面积
    判断一个字符串是否是由另2个字符串交错组成的
    矩阵的旋转
    求滑动窗口的最大值
    面向过程和面向对象的区别
    关于丑数
    求连续子数组的最大和
    多数投票算法(Majority Vote Algorithm)
  • 原文地址:https://www.cnblogs.com/lmf1110/p/8094000.html
Copyright © 2011-2022 走看看