文章目录

  • 前言
  • for循环介绍
  • for循环的语法分析
  • for循环应用举例
    • 1. 从命令中取值
    • 2. 输出从1到10
    • 3. 批量用户处理
    • 4. ping命令最经典的脚本
    • 5. 批量重命名文件
  • 总结

前言

循环语句常用于重复执行一条命令或一组命令等,直到达到结束条件后,则终止执行。在Shell中常见的循环命令有while、until、for和select等
今天我们来探讨第一个循环语句,for循环。

for循环介绍

for循环语句与while循环语句类似,但for循环语句主要用于有限次的循环场景,while主要无限次循环的场景,如守护进程。

for循环的语法分析

1.第一种格式

for  变量  in  列表
do操作
done

2,.第二种格式

for  ((初始化表达式; 条件表达式; 更新循环变量表达式))
do循环语句
done

for循环应用举例

1. 从命令中取值
[root@ecs-c13b for]# cat passwd    ### 创建好的密码文件
zhangsan 12345678
lisi  123456789
wuwang  123
wangermazi 123456
[root@ecs-c13b for]# cat for1.sh     ### 写好的脚本
#!/bin/bash
for i in `cat /root/for/passwd`
do
echo "$i"
done[root@ecs-c13b for]# bash for1.sh   ### 执行脚本以及执行后的效果
zhangsan
12345678
lisi
123456789
wuwang
123
wangermazi
123456
2. 输出从1到10

方法一:

[root@ecs-c13b for]# cat for2.sh
#!/bin/bash
for i in $( seq 1 10)
do echo $i
done

方法二:

[root@ecs-c13b for]# cat for3.sh
#!/bin/bash
for (( i=1; i<=10; i++ ))
doecho $i
done

方法三:

[root@ecs-c13b for]# cat for2.sh
#!/bin/bash
for i in {1..10}
do echo $i
done
3. 批量用户处理

创建10个用户

[root@ecs-c13b for]# cat for3.sh
#!/bin/bash
for (( i=1; i<=10; i++ ))
doecho "正在创建第$i个用户"useradd user$i
done
4. ping命令最经典的脚本

判断ip的是否可用 使用ping命令进行判断

[root@ecs-c13b for]# cat for4.sh
#!/bin/bashfor i in {1..100}
doping -c1 -i0.2 -w1 192.168.1.$i if (($?==0));thenecho "192.168.1.$i is up" elseecho "192.168.1.$i is down" fidone
5. 批量重命名文件
[root@ecs-c13b for]# cat for5.sh
#!/bin/ bash #文件名: rename. sh #用途: 重命名 .jpg 和 .png 文件count=1; for img in ` find . -iname '*.png' -o -iname '*.jpg' -type f `     ## 使用find查找png和jpg的文件 -o 指定多个-iname选项
donew=image-$count.${img##*.}    ##使用##和mv将查找到的文件重命名echo "Renaming $img to $new" mv "$img" "$new"   let count++   ## 生成 image-1 image-2的格式done

总结

for循环是工作中用到的最多的工具了,一定要多加练习。

【shell】shell脚本实战-for循环相关推荐

  1. 【shell】shell脚本实战-while循环语句

    前言 上文我们讨论了for循环的使用,在有限循环里,我们使用for循环是很方便的一件事情,今天我们来探讨下while循环 while循环语句的语法分析 语法格式一: while [条件] do操作 d ...

  2. 循序渐进学运维-shell脚本实战专栏

    我是互联网老辛,关注我吧,给自己每天的进步找一个机会和理由,不要被无效信息淹没,免除知识焦虑 前言 shell脚本大家要做为重点来学习,shell写的好,可以不学Python,一样拿高薪: shell ...

  3. Linux的shell脚本实战之while循环

    Linux的shell脚本实战之while循环 一.使用while循环计算 1.计算从1加到100之和 2.计算1-2+3-4+5....-100的值 二.while语句的三种方式 1.通过输入重定向 ...

  4. 【shell】shell脚本实战-循环的控制

    文章目录 前言 break和continue的区别 三种方式的对比案例 1. break 跳过整个循环 2. continue跳过当次循环 3. exit退出脚本 实战案例 总结 前言 在我们使用循环 ...

  5. linux 运维高级脚本生成器,Linux运维系列,Shell高级脚本自动化编程实战

    课程文件目录: Linux自动化运维系列 Shell高级脚本自动化编程实战 [6.1G] ┣━━01.Shell基础概述 [315.1M] ┃ ┣━━1-1 Shell脚本体系概述.mp4 [154. ...

  6. linux运维脚本编写,最强Linux自动化运维 Shell高级脚本编程实战 带习题+项目实战案例+全套配置脚本...

    最强Linux自动化运维 Shell高级脚本编程实战 带习题+项目实战案例+全套配置脚本 大家可以通过参考下面的课程学习目录,就会发现单单只从目录上来分析就知道这是一部非常系统的Shell自动化脚本运 ...

  7. shell 脚本实战 五

    摘自 shell脚本实战 第二版 第四章 Unix调校 脚本27 显示带有行号的文件 在显示文件时添加行号有很多种方法,其中一些实现起来相当简洁.例如,下面是 awk 的 做法: awk '{prin ...

  8. 【Linux】shell脚本实战-流程控制语句case

    文章目录 前言 什么是case语句 case语句语法分析 case实战案例 1. 做出你的选择 2. 早饭吃什么 3. apache服务启动脚本实战 总结 前言 前面我们探讨过shell脚本中的if语 ...

  9. Shell脚本实战之文件批量创建和修改

    Shell脚本实战之文件批量创建和修改 一.脚本要求 二.脚本内容 三.脚本运行结果 一.脚本要求 1.所有操作在/python下 2.批量创建12个以py后缀结尾的文件,文件名中必须包含_hcip, ...

最新文章

  1. java代码完全手写模仿qq登录界面
  2. P1108 低价购买
  3. as工程放到源码编译_关于AS高版本SDK编译生成的apk放入低版本android源码中集成编译...
  4. 大话设计模式(一 面试受挫——代码无错就是好?)
  5. 牛客 - 丁姐姐喜欢Fibonacci(找规律+思维)
  6. POJ - 3417 Network(树上差分)
  7. 我的世界有宠物系统的服务器,我的世界1.6.4宠物战争服务器客户端
  8. VMware专家:行动起来 狙击云炒作
  9. Principles of Reactive Programming 之Actors are Distributed (3)
  10. ThreadLocal原理浅析
  11. Redisson 配置
  12. SpringMVC课堂笔记
  13. arcgis面积计算
  14. HTB_Dancing 靶机之 smb 协议简介
  15. flash AS3.0实现进度条与播放暂停按钮的同步
  16. 我的世界服务器查延迟指令,服务器新手服主必看指令
  17. 商品评论情感分析——基于商品评论建立的产品综合评价模型(1)
  18. IDEA 返回上一步,回到下一步 冲突 快捷键设置
  19. JavaSE学习笔记
  20. 团队组成五个基本要素_团队的5个基本构成要素(5P):目标、定位、计划、职权、人...

热门文章

  1. java学习基础课之枚举(渡一教育)(八)
  2. 一加6 win11 刷机教程及报错处理
  3. SUSE12 SP2配置静态ip
  4. 高斯消元法列主消元法
  5. 如何获取服务器机器码_dmidecode命令详解(获取硬件信息)
  6. [2019.12.9]chapter10 Traps and Pitfalls
  7. 36 北京大学肖臻老师的区块链公开课,超级棒
  8. 等保2.0体系互联网合规实践白皮书​ 附下载
  9. python extractall函数_python中的Extractall
  10. 公司做一个网站的流程是什么?需要准备些什么呢?