一、循环介绍

for循环叫做条件循环,或者for i in,可以通过for实现流程控制

二、for语法

1、for语法一:for in

for var in value1 value2 ......
do
commands
done

举例说明:输出1到10

[root@localhost test20210726]# vim for1test.sh

#!/usr/bin/bash
for i in `seq 1 10`
do
echo $i
done

查看运行结果:

[root@localhost test20210726]# sh for1test.sh
1
2
3
4
5
6
7
8
9
10

2、for语法二:for  by c语言

for ((变量;条件;自增自减运算))do
commands
done

举例说明:输出1到10

[root@localhost test20210726]# vim for2test.sh 

#!/usr/bin/bash

for ((i=1;i<=10;i++))
do
echo $i
done

查看运行结果:

[root@localhost test20210726]# sh for2test.sh
1
2
3
4
5
6
7
8
9
10

3、for语法三:for多个变量

[root@localhost test20210726]# vim for3test.sh

#!/usr/bin/bash

for ((a=0,b=9;a<10;a++,b--))
do
echo $a $b
done

查看运行结果:

[root@localhost test20210726]# sh for3test.sh
0 9
1 8"I
we km eqg tg00 v6
4 5iu78
5 4
6 3
7 2
8 1
9 0

三、循环控制

1、sleep:睡眠+秒

[root@localhost test20210727]# vim testsleep.sh

#!/usr/bin/bash

for var in 1 2 3 4 5 6 7 8 9
do
echo $var
sleep 1
done

查看运行结果:(每隔一秒打印一个数字)

[root@localhost test20210727]# sh testsleep.sh
1
2
3
4
5
6
7
8
9

2、continue:跳过循环中的某次循环

[root@localhost test20210728]# vim continue.sh

#!/usr/bin/bash

#输出 1 2 3 4 6 7 8 9
for ((i=1;i<10;i++))
do
if [ $i -eq 5 ];then
continue
fi
echo $i
done

查看运行结果:

[root@localhost test20210728]# sh continue.sh
1
2
3
4
6
7
8
9

3、break:跳出循环继续执行后续代码

[root@localhost test20210728]# vim break.sh 

#!/usr/bin/bash

#输入 1 2 3 4 5
for ((i=1;i<10;i++));do
echo -n $i" "
if [ $i -eq 5 ]
then
break;
fi
done

查询运行结果:

[root@localhost test20210728]# sh break.sh
1 2 3 4 5

shell脚本(9)-流程控制for的更多相关文章

  1. shell脚本之流程控制

      shell脚本之流程控制 shell脚本之流程控制 条件语句 条件判断 循环语句for,while,until for循环 while循环 until循环 循环控制语句continue 循环控制语 ...

  2. shell脚本 3 流程控制

    shell流程控制 流程控制是改变程序运行顺序的指令.linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case).下面我将通过例子介 ...

  3. Shell脚本学习 - 流程控制和函数

    继续Shell的学习.上两篇是关于基本数据类型,基本语法以及运算符相关,这一篇是流程控制相关(if, for, while) 流程控制 if else 流程控制不可为空,如果else没有语句执行,就不 ...

  4. Shell脚本之流程控制(if、for、while)

    if 判断 if语句的三种格式: (1)if (2)if else (3)if elif else 语法格式如下: #if 语法格式 if 条件 then 命令1... 命令2... fi #if e ...

  5. shell脚本(10)-流程控制while

    一.while循环介绍 while循环与for一样,一般不知道循环次数使用for,不知道循环的次数时推荐使用while 二.while语法 while [ condition ] #条件为真才会循环, ...

  6. shell脚本(11)-流程控制case

    一.case介绍 生产环境下,遇到要根据不同的状况执行不同的预案的情况,首先根据可能出现的情况写出对应预案,根据出现的情况来加载不同的预案 特点:根据给予的不同的代码块 二.case语法 case 变 ...

  7. 【Shell 编程基础第二部分】Shell里的流程控制、Shell里的函数及脚本调试方法!

    http://blog.csdn.net/xiaominghimi/article/details/7603003 本站文章均为李华明Himi原创,转载务必在明显处注明:转载自[黑米GameDev街区 ...

  8. Shell命令和流程控制

    Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...

  9. Shell脚本的条件控制和循环语句

    条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...

  10. Shell命令和流程控制[linux常用命令的使用]

    在shell脚本中使用三类命令: unix命令 概念:管道.重定向.backtick 流程控制 1 unix命令 echo "some text":在屏幕上输出信息 ls:文件列表 ...

随机推荐

  1. [ABC232G] Modulo Shortest Path

    Problem Statement We have a directed graph with $N$ vertices, called Vertex $1$, Vertex $2$, $\ldots ...

  2. C#如何对List中的Object进行排序

    首先定义一个List类,这个类里面包含了Name和Total两个属性变量,下面就是针对这两个变量进行排序. public class Player { public string Name { get ...

  3. Tomcat自动化脚本

    /bin/bash war包名称 war_name="tchg.war" 要上传war包指定目录 war_dir="/usr/local/src/tchg" 工 ...

  4. ASR项目实战-决策点

    针对语音识别的产品,分别记录设计.开发过程中的决策点. 实时语音识别 对于实时语音识别来说,客户端和服务端之间实时交换语音数据和识别的结果. 客户端在启动识别时,即开始发送语音数据,期望在等待较短的时 ...

  5. ElasticSearch之配置

    ElasticSearch主要的配置文件,如下: elasticsearch.yml,ElasticSearch的相关参数. jvm.options,JVM的相关参数. log4j2.properti ...

  6. java漏洞学习平台搭建

    java漏洞平台搭建 项目地址 : https://github.com/j3ers3/Hello-Java-Sec 配置mvn 先配置一下mvn,下载后解压 proxychains wget htt ...

  7. STM32CubeMX教程5 TIM 定时器概述及基本定时器

    1.准备材料 开发板(STM32F407G-DISC1) ST-LINK/V2驱动 STM32CubeMX软件(Version 6.10.0) keil µVision5 IDE(MDK-Arm) 逻 ...

  8. Ubuntu 20.04 设置时区、配置NTP同步 timesyncd 代替 ntpd

    本文的服务器环境为 Ubuntu 20.04 系统,一个拥有 sudo 权限的非 root用户,并开启了防火墙. 基本时间命令 要在 Ubuntu 20.04 系统上查看服务器时间,可以使用 date ...

  9. C语言汉诺塔递归算法实现

    这是个目录 一.什么是递归函数 1.先看一下一个递归的例子 2.递归的基本原理 二.汉诺塔问题 1.简要概括一下汉诺塔的故事 2.回到编程,汉诺塔问题主要就是解决这个问题: 3.怎么解决汉诺塔问题 要 ...

  10. mac 编译php 7.2+扩展编译 的坑史(不是swoole的坑),php的一个坑,这个坑还没填满,问题根源还没有找到 !

    目前网上找到的文章全是php 7.1,但是brew己经没有7.1了,最新是7.2,这让我怀疑是不是我的版本问题,导致swoole编译时总是编译不过去.后来发现任何扩展都编不过去,提示: Configu ...