shell 编程练习

echo  -e “\033[34;40mtest\033[0m” 34代表字体颜色   40代表字体背景颜色

-----------批量创建用户---------------------

#!/bin/bash

#create users

function echo_color() {

    if [ $1 == "green" ]; then

          echo -e "\033[32;40m$2\033[0m"

    elif [ $1 == "red" ]; then

          echo -e "\033[31;40m$2\033[0m"

    fi

}

for USER in  user{1..5}; do

    if ! id $USER &>/dev/null; then

         PASS=$(echo $RANDOM |md5sum |cut -c 1-8)

         useradd $USER

        echo $PASS | passwd --stdin $USER &>/dev/null

         echo -e "$USER\t$PASS" >> user_file

         echo "$USER user create successful."

    else

         echo_color red "$USER user already exists!"

    fi

done


----------检查主机状态存活---------------

1、

#!/bin/bash

IP_LIST="1.1.1.1 2.2.2.2 3.3.3.3"

for IP in $IP_LIST; do

    NUM=1

    while [ $NUM -le 3 ]; do

        if ping -c 1 $IP > /dev/null; then

            echo "$IP Ping is succesful."

            break

        else

            FAIL_COUNT[$NUM]=$IP

            let NUM++

        fi

    done

    if [ ${#FAIL_COUNT[*]} -eq 3 ]; then

        echo"${FAIL_COUNT[1]}  Ping  is failure!"

        unset FAIL_COUNT[*]

    fi

done


2、

#!/bin/bash

IP_LIST="1.1.1.1 2.2.2.2 3.3.3.3"

for  IP in  $IP_LIST; do

    FAIL_COUNT=0

    for  ((i=1,i<=3,i++)); do

        if ping -c 1 $IP >/dev/null;  then

            echo "$IP Ping is successful."

            break

        else

            let  FAIL_COUNT++

        fi

    done

    if [ $FAIL_COUNT -eq 3 ];  then

        echo "$IP Ping is failure!"

    fi

done


3、

#!/bin/bash

ping_success_status() {

        if  ping -c 1 $IP >/dev/null;  then

                echo "$IP Ping is successful."

                continue

        fi

}

IP_LIST="1.1.1.1 2.2.2.2 3.3.3.3"

for  IP  in $IP_LIST; do

        ping_success_status

        ping_success_status

        ping_success_status

        echo "$IP Ping is failure!"

done




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值