一、介绍和语法

1. while循环方式

while循环语句会对紧跟在while命令后的条件表达式进行判断,如果该表达式成立,则执行while循环里面的命令或语句,每一次执行到done时,会重新判断while条件表达式是否成立,直到不成立时才会跳出while循环

如果一开始就不成立,那么程序不会进入循环体

2. while语法

while <条件表达式>
do
指令...
done

3. while循环小结

while循环的特长是执行守护进程,以及实现我们希望循环持续执行不退出的应用,以及频率小于1分钟的循环处理,其他的都可以被for和crontab替代

无线循环需要sleep和usleep来控制频率

二、范例

1. 守护进程

  • cat /server/scripts/b9.sh
#!/bin/bash
while true #条件永远为真,则会一直运行,成为守护进程
#while [ 1 ] #作用同上一句
do
uptime
sleep 2
done
  • sh /server/scripts/b9.sh

    13:37:22 up 3 days, 18:44, 1 user, load average: 0.00, 0.00, 0.00

    13:37:24 up 3 days, 18:44, 1 user, load average: 0.00, 0.00, 0.00

    13:37:26 up 3 days, 18:44, 1 user, load average: 0.00, 0.00, 0.00

    13:37:28 up 3 days, 18:44, 1 user, load average: 0.00, 0.00, 0.00

shell中的两个休息命令sleep 1,表示休息1秒,usleep 1000000,也表示休息1秒

2.倒叙打印5、4、3、2、1的方法

  • cat /server/scripts/b9.sh
#!/bin/bash
i=5
while [ $i -gt 0 ]
do
echo $i
((i--))
done
  • sh /server/scripts/b9.sh

    5

    4

    3

    2

    1

3.计算从1加到100之和

备注:(用1+2+3..+100的方法)

  • cat /server/scripts/b9.sh
#!/bin/bash
i=1
sum=0
while [ $i -le 100 ]
do
((sum+=i))
((i++))
done
[ "$sum" -ne 0 ] && echo "sum is $sum"
  • sh /server/scripts/b9.sh

    sum is 5050

循环方式一个一个累加,数量多了就很慢,可以使用公司计算的方式sum=i*(i+1)/2

循环3-while语法的更多相关文章

  1. 3.2.1 for循环与while循环的基本语法

    不停地重复一件事情,时间久了会非常无聊,然后大脑就会由于疲劳而容易入睡. 重复性的劳动会使人疲劳,而计算机不会,只要代码写得正确,计算机就会孜孜不倦地重复工作.在Python中主要有两种形式的循环结构 ...

  2. 循环结构select 语法

  3. JavaScript 的循环语句语法摘要

     if条件语句语法: if(condition){ statements; } 理解:圆括号里的是条件参数  ,花括号里的为执行的语句. 示例代码:if(1>2){ alert("Th ...

  4. PHP(控制语句,随机数,循环语法)

     1.随机数:Math.random():0到1 不包括1 永远取不到2.控制语句if(){} for循环  语法 运行步骤(过程,原理)   1.初始化 2.判断条件 3.变量改变  index:下 ...

  5. python语法(三)— 循环

    上一篇,学习了python的判断语句,了解了python中如何直线分支语句,本文来学习循环语句.python中有两种循环while循环和for循环,当我们不知道循环次数时使用while循环,让我们知道 ...

  6. 语法,if,while循环,for循环

    目录 一.语法 二.while循环 三.for循环 一.语法 if: if判断其实是在模拟人做判断.就是说如果这样干什么,如果那样干什么.对于ATM系统而言,则需要判断你的账号密码的正确性. if 条 ...

  7. IT兄弟连 Java语法教程 流程控制语句 循环结构语句1

    循环语句可以在满足循环条件的情况下,反复执行某一点代码,这段被重复执行的代码被称为循环体,当反复执行这个循环体时,需要在合适的时候把循环条件该为假,从而结束循环,否则循环将一直执行下去,形成死循环.循 ...

  8. Python语法基础03(if语句,while循环与for循环)

    if语句:语法:单分支if 判断条件:语句块 执行过程:首先执行判断条件,当条件成立则执行判断条件下面的语句块,若条件不成立,则不执行 双分支if 判断条件:语句块1else:语句块2执行过程: 首先 ...

  9. 【python基础语法】运算符&if条件语句&while循环&for循环(第5天课堂笔记)

    """ if语法规则: if 条件比较语句1: # 条件成立的时候 会执行的代码 elif 条件比较语句2: # 条件2成立的时候 会执行的代码 else: # 条件不成 ...

  10. java基础3_循环语句,数组

    java中的循环: Java中提供了3中循环结构:  while  do-while  for ① 循环结构的作用? 可以不断重复执行循环结构中的代码: ② 上面的3个循环结构功能都是一样的,只是结构 ...

随机推荐

  1. kafka在阿里云上的配置

    只需要改server.properties listeners=PLAINTEXT://  内网的ip地址和9092端口advertised.listeners=PLAINTEXT://外网的ip的地 ...

  2. docker部署opengauss

    下载二进制包到/opt/software/ wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/1.1.0/x86/openGauss-1. ...

  3. com.mysql.cj.jdbc.exceptions.CommunicationsException

    mysql数据库链接空闲一段时间后就会关闭连接,但是我们的java程序依然持有该连接的引用,对已经关闭的数据库连接进行操作就会引发上述异常. 解决办法: 1.增大mysql数据库的wait_timeo ...

  4. [菜鸡随笔-2]用mv代替rm安全地进行删除操作的小技巧

    牢骚和背景介绍: rm -rf /*的梗 相信大家都听过笑过,我不止听过笑过,还不小心试过(不要熬夜写东西!).为此丢了我一周的心血,和40块钱(买u盘跑网吧下载引导文件).所幸,这只是在自己的机器上 ...

  5. 服务器consul与本地服务健康检查不通问题解决

    (125条消息) 服务器consul与本地服务健康检查不通问题解决_向往鸟的博客-CSDN博客_consul健康检查失败 .MathJax, .MathJax_Message, .MathJax_Pr ...

  6. PyTorch Geometric(pyg)学习

    参考2个链接: 第十六课.Pytorch-geometric入门(一)_tzc_fly的博客-CSDN博客_pytorch-geometric 第十七课.Pytorch-geometric入门(二)_ ...

  7. TCP&UDP测试工具使用方式方法

    第一项:测试TCP 步骤1:首先需要一台电脑上建立一个TCP服务器.并设置一个端口号如下图60003即可.并开启服务 步骤2:在另外一台电脑上,创建一个客户端连接,如下图.输入服务器的IP地址和端口号 ...

  8. vue 中的 .sync 修饰符 与 this.$emit('update:key', value)

    vue 中 .sync 修饰符,是 2.3.0+ 版本新增的功能 在有些情况下,我们可能需要对一个 prop 进行"双向绑定".不幸的是,真正的双向绑定会带来维护上的问题,因为子组 ...

  9. nxp imx8m与imx6 使用VPU时,申请CMA的区别

    imx8mp是什么时候申请CM的: imx8mp是我自己看的,imx6不一定保熟. imx8mp: imx6:

  10. Kotlin源码分析 - 元编程(使用自身语言编写生成自身代码)

    Kotlin源码分析 Kotlin模块FIR分析发现,在生成fir tree的时候,kotlin使用了元编程的技术,以前看到这个技术还是在JastAdd上,使用jastadd语法去写代码,生成Java ...