shell脚本案例

案例一:批量检测多个主机的存活状态

命令备注:ping命令可以测试某台主机的连通性,

使用-c选项可以设置ping的次数,

使用-i选项可以设置多次ping之间的间隔时间(单位秒),

使用-W选项可以设置ping不通时的超时时间(单位秒)。

  • vim checkhosts.sh
#!/bin/bash
for i in {1..254}
do
    ping -c 3 -i 0.2 -W 1 192.168.4.$i &> /dev/null
    if [ $? -eq 0 ];then
        echo "Host 192.168.4.$i is up."
    else
        echo "Host 192.168.4.$i is down."
    fi
done

案例二:批量检测多个主机的存活状态

创建users.txt,写入无规律的账户名称,最后使用for循环读取该文件,
批量创建账户并设置密码。

  • vim useradd.sh
#!/bin/bash
for i in `cat /root/users.txt`
do
        useradd $i
        echo 123 | passwd --stdin $i
done

案例三:while循环一般用法

  • 无心的死循环脚本
  • vim while01.sh
#!/bin/bash
i=3
while [ $i -le 10 ]
do
        echo "$i"
done
  • 有效循环脚本
  • vim while02.sh
#!/bin/bash
i=3
while [ $i -le 10 ]
do
        echo "$i"
        let i++
done
  • 死循环的一般格式:
  • vim while03.sh
#!/bin/bash
while :
do
        echo "hello world"
done

提示用户猜测一个随机数,直到才对为止
使用系统自带变量RANDOM提取随机数(1-100),使用while :制作死循环

  • vim guess.sh
#!/bin/bash
num=$[RANDOM%100+1]
i=0
while :
do
        read -p "请输入随机数1-100,你猜:" guess
                let i++
        if [ $guess -eq $num ];then
                echo "猜对了。"
                echo "你猜了$i次。"
                exit
        elif [ $guess -gt $num ];then
                echo "猜大了。"
        else
                echo "猜小了。"
        fi
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值