for循环

定式的循环,已知要进行几次循环。

  • 语法格式
for  i  in con1  con2 con3 ...
do
        程序段
done
  1. 第一次循环,变量$i 内容为con1
  2. 第二次循环,变量$i 内容为con2
  3. 第三次循环,变量$i 内容为con3
  • 例子1
    捉出用的名后并使用id命令检查出用户的标识符和特殊参数
uu=`cut  -d  ":" -f1  /etc/passwd`
for  i  in  $uu
do
    id $uu
done
#执行结果
[root@k8s-node2 ~]# ./idrom.sh 
uid=0(root) gid=0(root) 组=0(root)
uid=1(bin) gid=1(bin) 组=1(bin)
uid=2(daemon) gid=2(daemon) 组=2(daemon)
uid=3(adm) gid=4(adm) 组=4(adm)
uid=4(lp) gid=7(lp) 组=7(lp)
uid=5(sync) gid=0(root) 组=0(root)
uid=6(shutdown) gid=0(root) 组=0(root)
uid=7(halt) gid=0(root) 组=0(root)
uid=8(mail) gid=12(mail) 组=12(mail)
uid=11(operator) gid=0(root) 组=0(root)
uid=12(games) gid=100(users) 组=100(users)
uid=14(ftp) gid=50(ftp) 组=50(ftp)
  • 例2
    使用ping命令 来获取本192.168.1.0/24 网段内的机器是否能够联通
#!/bin/bash
network="192.168.1"
for i in  `seq  254` 
do
    ping -c 1  -w 1   $network.$i  &> /dev/null && result=0 || result=1
    if [ "$result" == 0 ];then
        echo  "server $network.$i is UP"
    else
        echo  "server $network.$i is DOWN"
    fi
done
  • for 的另一种格式写法
#!/bin/bash
read -p  "请输入数值" nu
s=0
for (( i=1 ; i<=$nu; i=i+1))
do
      s=$(($s+$i))
done
echo  "the  result of '1+2+3+4...+$nu' ===> $s" 
#####
[root@k8s-node2 ~]# ./szdd.sh 
请输入数值100
the  result of '1+2+3+4...+100' ===> 5050

学习笔记

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 批量探测10.0.0.0/24网段的所有主机是否存活,存活的主机的远程连接端口是否开放。 1. 1-254 ...
    香菇藍瘦阅读 498评论 0 0
  • 本机课程目标 掌握for循环语句的基本语法结构 掌握while和until循环语句的基本语法结构 一、==for循...
    yueshao阅读 360评论 0 0
  • 本机课程目标 掌握for循环语句的基本语法结构 掌握while和until循环语句的基本语法结构 一、for循环语...
    yueshao阅读 345评论 0 0
  • 本文主要解答三个问题: 第一问:for循环大固定语法结构和工作原理是什么? 第二问:如何运用shell脚本中,fo...
    RealLuo阅读 1,695评论 0 2
  • shell流程控制-for循环语句 for循环介绍 for语法 循环控制 脚本在执行任务的时候,总会遇到需要循环执...
    亮仔_c1b5阅读 870评论 0 0