zoukankan      html  css  js  c++  java
  • shell脚本小示例

    求1-100自然数的和:
    
    法一:for循环
    #!/bin/bash
    #
    declare -i sum=0
    for ((i=0;i<=100;i++));do
      let sum+=$i
    done
    
    echo "Sum:$sum"
    
    法二:while循环
    #!/bin/bash
    #
    declare -i sum=0
    declare -i i=0
    
    while [ $i -le 100 ];do
      let sum+=$i
      let i++
    done
    echo $i
    echo "Summary:$sum."
    
    统计tcp连接状态的脚本:
    
    #!/bin/bash
    # This script is count tcp status
    
    declare -i estab=0
    declare -i listen=0
    declare -i other=0
    
    for state in $(netstat -tan | grep "^tcp>" | awk "{print $NF}");do
      if [ "$state" == 'ESTABLISHED' ];then
        let estab++
      elif [ "$state" == 'LISTEN' ];then
        let listen++
      else
        let other++
      fi
    
    done
    
    echo "ESTABLISHED:$estab"
    echo "LISTEN:$listen"
    echo "Unknow:$other"
    
    批量添加10个用户:
    
    #!/bin/bash
    
    if [ ! $UID -eq 0 ];then
      echo "Only root can use this script."
      exit 1
    fi
    
    for i in {1..10};do
      if id user$i &> /dev/null;then
        echo "user$i exist"
      else
        useradd user$i
        if [ $? -eq 0 ];then
          echo "user$i" | passwd --stdin user$i &> /dev/null
        fi
      fi
    
    done
    
    测试一个网段内主机的连通脚本:
    
    #!/bin/bash
    #ping 
    
    net='172.16.1'
    uphosts=0
    downhosts=0
    
    for i in {1..254};do
      ping -c 1 -w 1 ${net}.${i} &> /dev/null
      if [ $? -eq 0 ];then
        echo "${net}.${i} is up."
        let uphosts++
      else
        echo "${net}.${i} is down."
        let downhosts++
      fi
    done
    
    echo "Up hosts:$uphosts"
    echo "Down hosts:$downhosts"
    
    求数的阶乘:
    
    #!/bin/bash
    #
    
    fact() {
    
      if [ $1 -eq 0 -o $1 -eq 1 ];then
        echo 1
      else
        echo $[$1*$(fact $[$1-1])]
      fi
    
    }
    
    fact 5
    
                              
    

      

  • 相关阅读:
    JS通过组装key值访问json对象中的值
    js属性对象的hasOwnProperty方法
    ES6 去掉已经 new Date().format 方法
    Ajax不能接受php return值的原因
    CentOS最常用命令及快捷键整理
    js中for循环中需要调用异步方法,怎么确保执行的顺序?
    MYSQL 更新字段,向字段追加字符串
    java-学习2
    java-学习1
    JS----贪吃蛇游戏
  • 原文地址:https://www.cnblogs.com/pythonal/p/7656576.html
Copyright © 2011-2022 走看看