12.5 【Linux】循环(loop)

简介: 12.5 【Linux】循环(loop)

12.5 循环 (loop)

12.5.1 while do done, until do done (不定循环)

一般来说,不定循环最常见的就是下面这两种状态了:

while 的中文是“当....时”,所以,这种方式说的是“当 condition 条件成立时,就进行循环,直到 condition 的条件不成立才停止”的意思。还有另外一种不定循环的方式:

12.5.2 for...do...done (固定循环)

相对于 while, until 的循环方式是必须要“符合某个条件”的状态, for 这种语法,则是“ 已经知道要进行几次循环”的状态!他的语法是:

以上面的例子来说,这个 $var 的变量内容在循环工作时:

1. 第一次循环时, $var 的内容为 con1 ;

2. 第二次循环时, $var 的内容为 con2 ;

3. 第三次循环时, $var 的内容为 con3 ;

12.5.3 for...do...done 的数值处理

除了上述的方法之外,for 循环还有另外一种写法!语法如下:

这种语法适合于数值方式的运算当中,在 for 后面的括号内的三串内容意义为:

初始值:某个变量在循环当中的起始值,直接以类似 i=1 设置好;

限制值:当变量的值在这个限制值的范围内,就继续进行循环。例如 i

执行步阶:每作一次循环时,变量的变化量。例如 i=i+1。

12.5.4 搭配乱数与阵列的实验

12.6 shell script 的追踪与 debug

12.7 重点回顾

shell script 是利用 shell 的功能所写的一个“程序 (program)”,这个程序是使用纯文本文件,将一些 shell 的语法与指令(含外部指令)写在里面, 搭配正则表达式、管线命令与数据流重导向等功能,以达到我们所想要的处理目的


shell script 用在系统管理上面是很好的一项工具,但是用在处理大量数值运算上, 就不够好了,因为 Shell scripts 的速度较慢,且使用的 CPU 资源较多,造成主机资源的分配不良。


在 Shell script 的文件中,指令的执行是从上而下、从左而右的分析与执行;


shell script 的执行,至少需要有 r 的权限,若需要直接指令下达,则需要拥有 r 与 x 的权限;


良好的程序撰写习惯中,第一行要宣告 shell (#!/bin/bash) ,第二行以后则宣告程序用途、版本、作者等


对谈式脚本可用 read 指令达成;


要创建每次执行脚本都有不同结果的数据,可使用 date 指令利用日期达成;


script 的执行若以 source 来执行时,代表在父程序的 bash 内执行之意!


若需要进行判断式,可使用 test 或中括号 ( [] ) 来处理;


在 script 内,$0, $1, $2..., $@ 是有特殊意义的!


条件判断式可使用 if...then 来判断,若是固定变量内容的情况下,可使用 case $var in ...esac 来处理


循环主要分为不定循环 (while, until) 以及固定循环 (for) ,配合 do, done 来达成所需任务!


我们可使用 sh -x script.sh 来进行程序的 debug

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
6月前
|
Shell Linux C语言
【Shell 命令集合 磁盘管理 】Linux losetup命令使用教程 将一个文件或设备与一个回环设备(loop device)进行关联
【Shell 命令集合 磁盘管理 】Linux losetup命令使用教程 将一个文件或设备与一个回环设备(loop device)进行关联
227 0
|
安全 Linux 调度
15.3 【Linux】循环执行的例行性工作调度
15.3 【Linux】循环执行的例行性工作调度
51 0
|
Shell Linux
Linux操作系统实验七 Shell编程之循环程序编程(下)
Linux操作系统实验七 Shell编程之循环程序编程(下)
173 0
|
5月前
|
机器学习/深度学习 Shell Linux
linux shell脚本判断文件或文件夹是否存在循环操作
linux shell脚本判断文件或文件夹是否存在循环操作
189 0
|
Linux
7.4.2 【Linux】特殊设备 loop 挂载 (镜像文件不烧录就挂载使用)
7.4.2 【Linux】特殊设备 loop 挂载 (镜像文件不烧录就挂载使用)
179 0
|
6月前
|
算法 Shell Linux
Linux的shell命令——判断与循环
Linux的shell命令——判断与循环
85 1
|
Shell Linux
Linux操作系统实验七 Shell编程之循环程序编程(中)
Linux操作系统实验七 Shell编程之循环程序编程(中)
136 0
|
Linux
linux中使用while循环实现循环控制示例
linux中使用while循环实现循环控制示例
112 3
|
Shell Linux Go
《Linux操作系统编程》第八章 Shell程序设计: shell 语言结构,包括测试、分支、循环、跳转、函数、语句组
《Linux操作系统编程》第八章 Shell程序设计: shell 语言结构,包括测试、分支、循环、跳转、函数、语句组
120 0
|
Java Shell Linux
如何在 Linux 中使用 Bash For 循环
如何在 Linux 中使用 Bash For 循环
161 0
下一篇
无影云桌面