shell脚本中循环语句(极其粗糙版)

2023-10-25 13:13

本文主要是介绍shell脚本中循环语句(极其粗糙版),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

分界点:以下内容需要更改,正常放假更改

循环语句:

循环:重复执行一段代码的结构,通过循环,可以在满足一定的条件情况下,多次的执行相同的代码

循环包括:循环体以及循环条件,当循环条件满足,循环体将一直被执行,直到循环条件不满足为止

循环式一种流程控制的结构。

遍历:遍历是指对一组数据结构中的每个元素进行一次访问的过程

数组 列表等等,会遍历其中的元素,对这些元素进行指定的操作

遍历是对数据操作的过程

循环和遍历是结合使用的

循环的好处:

1、重复的执行代码,可以在程序中重复执行一段代码,避免重新编写代码。可以减少程序的代码量,提高程序的可读性和可维护性

2、提高整个程序运行的效率

3、提供代码的复用率

for循环:用于已知循环次数的场景

for 变量名 in 取值范围

do

命令序列

done

死循环:

for((;;))

for循环的第二种格式:

类C语言格式:

for((表达式1:表达式2:表达式3))

for((i=1;i<=5;i++))

bash -x xh.sh

调试,可以看到脚本的完整的执行过程

也可以在

image-20231024145625830

常用的转义符:

echo -n 表示不换行输出

echo -e 输出转义符

\b:相当于退格键 backspace

\c:不换行输出lt

\n:换行输出

\t:相当tab键,tab键的空格,制表符

循环控制语句:

第一种:continue:跳出循环,表示满足条件时跳出循环,但是不影响后续循环的继续执行。作用:在循环内部跳过本次循环并继续下一次循环。

ps:跳出当前循环的后续执行条件,不执行

第二种:break:跳出循环,满足条件直接跳出循环,后续的循环条件也不在执行。

ps:立即跳出循环

第三种:exit:表示整个进程全部结束。

随机数:a=$[RANDOM]

这是随机生成0-32767的随机数

例如1-100 的格式a=$[RANDOM%100+1]

for 循环

1.循环的作用就是为了重复的执行的代码,用循环更方便

2.双层:外循环控制整个循环的次数,而且外循环执行的是行,内循环执行的是列

3.循环控制语句:continue break exit

continue: 跳出循环,但是如果后续有循环条件,他会继续执行后续的循环

break:跳出循环,后续的循环条件不在执行

默认的数字是1 有几层后面的数字就是控制几次循环

exit:立刻退出进程,结束运行

exit 0:

双层循环 基于双层循环的continue和break练习

作业:

淘宝购物:

一家店铺,只有五种商品进行选择

分别是:

衣服500

裤子400

鞋子350

帽子150

袜子50

客人来看,每次选购完之后或者进店什么都不买,都提示用户,你还要接着买嘛,如果不在继续购物,提示用户的消费金额,结账才能走了。

提示:死循环

这篇关于shell脚本中循环语句(极其粗糙版)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/282796

相关文章

SQL BETWEEN 语句的基本用法详解

《SQLBETWEEN语句的基本用法详解》SQLBETWEEN语句是一个用于在SQL查询中指定查询条件的重要工具,它允许用户指定一个范围,用于筛选符合特定条件的记录,本文将详细介绍BETWEEN语... 目录概述BETWEEN 语句的基本用法BETWEEN 语句的示例示例 1:查询年龄在 20 到 30 岁

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

Mybatis Plus JSqlParser解析sql语句及JSqlParser安装步骤

《MybatisPlusJSqlParser解析sql语句及JSqlParser安装步骤》JSqlParser是一个用于解析SQL语句的Java库,它可以将SQL语句解析为一个Java对象树,允许... 目录【一】jsqlParser 是什么【二】JSqlParser 的安装步骤【三】使用场景【1】sql语

Golang实现Redis分布式锁(Lua脚本+可重入+自动续期)

《Golang实现Redis分布式锁(Lua脚本+可重入+自动续期)》本文主要介绍了Golang分布式锁实现,采用Redis+Lua脚本确保原子性,持可重入和自动续期,用于防止超卖及重复下单,具有一定... 目录1 概念应用场景分布式锁必备特性2 思路分析宕机与过期防止误删keyLua保证原子性可重入锁自动

sql语句字段截取方法

《sql语句字段截取方法》在MySQL中,使用SUBSTRING函数可以实现字段截取,下面给大家分享sql语句字段截取方法,感兴趣的朋友一起看看吧... 目录sql语句字段截取sql 截取表中指定字段sql语句字段截取1、在mysql中,使用SUBSTRING函数可以实现字段截取。例如,要截取一个字符串字

Linux实现简易版Shell的代码详解

《Linux实现简易版Shell的代码详解》本篇文章,我们将一起踏上一段有趣的旅程,仿照CentOS–Bash的工作流程,实现一个功能虽然简单,但足以让你深刻理解Shell工作原理的迷你Sh... 目录一、程序流程分析二、代码实现1. 打印命令行提示符2. 获取用户输入的命令行3. 命令行解析4. 执行命令

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Spring三级缓存解决循环依赖的解析过程

《Spring三级缓存解决循环依赖的解析过程》:本文主要介绍Spring三级缓存解决循环依赖的解析过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、循环依赖场景二、三级缓存定义三、解决流程(以ServiceA和ServiceB为例)四、关键机制详解五、设计约

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设