北京企业网站制作,宁波seo怎么选,wordpress的媒体选项,官方网站百度一下当型循环和直到型循环#xff1a;
循环语句常用于重复执行一条指令或一组指令#xff0c;直到条件不满足时停止。
在企业实际应用中#xff0c;常用于守护进程或者持续运行的程序。 while语法结构#xff1a;
while 条件
do指令...
done
while循环语句对后面的条件表达…
当型循环和直到型循环
循环语句常用于重复执行一条指令或一组指令直到条件不满足时停止。
在企业实际应用中常用于守护进程或者持续运行的程序。 while语法结构
while 条件
do指令...
done
while循环语句对后面的条件表达式进行判断如果条件表达式成立就执行while循环体中的民工或者语句每次执行到done时候就重新判断while条件表达式是否成立直到条件表达式不成立时才会跳出while循环体。如果一开始条件表达式不成立那么程序就不会进入循环体中执行命令了。 示例1 每隔2秒输出一次系统负载uptime。
[rootvm1 scripts]# cat while1.sh
#!/bin/bashwhile true
douptimesleep 2
done执行结果
[rootvm1 scripts]# sh while1.sh20:37:01 up 3:49, 1 user, load average: 0.00, 0.01, 0.0520:37:03 up 3:49, 1 user, load average: 0.00, 0.01, 0.0520:37:05 up 3:49, 1 user, load average: 0.00, 0.01, 0.0520:37:07 up 3:49, 1 user, load average: 0.00, 0.01, 0.05
^Cwhile true 表示的是永远为真因此会一直运行象死循环一样但是我们称呼为守护进程。 示例2
[rootvm1 scripts]# cat while2.sh
#!/bin/bashwhile true
douptime /tmp/uptime.logsleep 2
done执行情况
[rootvm1 scripts]# sh while2.sh
[1] 1983
[rootvm1 scripts]# tail -f /tmp/uptime.log20:44:23 up 3:56, 1 user, load average: 0.00, 0.01, 0.0520:46:19 up 3:58, 1 user, load average: 0.00, 0.01, 0.0520:46:21 up 3:58, 1 user, load average: 0.00, 0.01, 0.0520:46:23 up 3:58, 1 user, load average: 0.00, 0.01, 0.0520:46:25 up 3:58, 1 user, load average: 0.00, 0.01, 0.05在实际的工作中一般会通过客户端ssh连接到服务器因此可能会在脚本或者命令执行期间不能中断的需求若中断则会前功尽弃更要命的是破坏系统数据。 防止脚本执行中断的方法
1sh while2.sh 使用在后台运行脚本。
2screen命令
3nohup sh while2.sh 使用nohup加在后台运行脚本。 示例3 使用while竖向打印54321。
[rootvm1 scripts]# cat while3.sh
#!/bin/bash
i5
while [ $i -gt 0 ]
doecho $i((i--))
done执行结果
[rootvm1 scripts]# sh while3.sh
5
4
3
2
1示例4 计算从1到100之和。
[rootvm1 scripts]# cat while4.sh
#!/bin/bash
#
i1
sum0
while [ $i -le 100 ]
do((sumsumi))((i))
doneprintf totalsum is: $sum\n执行结果 [rootvm1 scripts]# sh while4.sh
totalsum is: 5050
代码说明正常输出使用echo就能输出使用printf可以显示比较格式化一点的字符串信息。