shell脚本练习

例1 循环ping192.168.110网段的所有主机

#!/bin/bash
i=1 #定义变量
for i in {1..254} #变量取值范围
do
   ping -c 2 -w 3 -i 0.3 192.168.110.$i $> /dev/null #ping指令 -c代表执行次数 -w代表超时时间 -i代表时间间隔 $i表示ip地址的最后一个字段取值为变量i /dev/null表示无底洞 即ping指令的输出直接丢弃不显示
  if [ $? -eq 0 ] ;then #$?表示上一个指令的退出状态 如果不为0表示ping通 则显示该地址可达
 echo "192.168.110.$i is yes"
 else
 echo "192.168.110.$i is no" 
 fi #fi是if语句的结束
 let i++ #let用来操作表达式
done #for循环结束

例2 for批量创建用户

user=$`cat /opt/user.txt`
for i in $user #读取文件中的用户信息
do
   useradd $i #添加用户
   echo "1234" | passwd --stdin $i #更新用户密码

done
~    

例3 创建存放1-100奇数的数组里

#!/bin/bash
for ((i=0;i<=100;i++))
do
  if [ $[$i%2] -eq 1  ] ;then #判断数据的奇偶 $i表示变量i -eq判断数据不相等
   arr[$[$[$i-1]/2]]=$i #存放数据 $[]表示变量
  fi
done
echo ${arr[*]}

例4 数组操作

#!/bin/bash
num=(90 90 90 90 90 90 90 90 20 20) #数组定义
for ((i=0;i<=9;i++))
do
  if [  $[num[$i]] -lt 60 ]#判断小于60
  then
     num[$i]=60
  fi
done
echo ${num[*]} #*表示访问数组中所有的元素

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值