Shell脚本④循环语句for、while、until

目录

一.for

1. 九九乘法表

2.求1到10奇数和

3.累计加到100

(1)方法一

(2)方法2

二.while

1.猜价格小游戏

2.累加到100的方法三

三.until循环

1.累加到100方法四

四.嵌套循环

五.循环语句中break、exit和continue

1.break的使用

2.exit的使用

3.continue的使用


一.for

格式:

for 变量名 in   {list}
do
     命令
done

1. 九九乘法表

#!/bin/bash
for j in {1..9}dofor i in `seq $j`doecho -e "${i}x${j}=$[i*j] \t\c"#\t tab键可以对齐doneecho
done

2.求1到10奇数和

#/bin/bash
sum=0
for i in {1..10..2}
dosum=$[sum+i]let i++
done
echo "10以内的奇数和为:$sum"

3.累计加到100

(1)方法一
#!/bin/bash
sum=0
for iin {1..100}
do
sum=$[sum+i]
done
echo $sum

(2)方法2
#!/bin/bash
sum=0
for ((i=0;i<=100;i++))
do
sum=$[i+sum]
done
echo sum=$sum

二.while

格式:
while  [ 条件测试操作 ]
do                        #do代表循环的开始
    判断式/命令序列
done                     #done代表循环的结束

1.猜价格小游戏

#!/bin/bash
p=`echo $[RANDOM%1000+1]`
time=0while true
do
let time++
read -p "请输入您猜测的价格(1-1000):" h
if [ $h -eq $p ]
then
echo "恭喜您猜中了,您一共猜测了$time次"
exit
elif [ $h -gt $p ]
then
echo "您猜测的价格过高"
else
echo "您猜测的价格过低"
fi
done

2.累加到100的方法三

#!/bin/bash
i=0
sum=0
while [ $i -le 100 ]
do
sum=$[i+sum]
let i++
done
echo $sum

三.until循环

格式:
until  [ 条件测试操作 ]
do
    判断式/命令序列
done

1.累加到100方法四

#!/bin/bash
sum=0
i=0
until [ $i -gt 100 ]
dosum=$[sum+i]let i++
done
echo "{1..100}的和:$sum"

四.嵌套循环

格式:
#!/bin/bash
for ((i=1;i<5;i++))
doecho 此${i}为外部循环for((j=1;j<4;j++))doecho -e "\t此${j}为内部循环"done
done

五.循环语句中break、exit和continue

1.break的使用

#!/bin/bash
for ((i=1;i<5;i++))
do      echo 此${i}为外部循环for((j=1;j<4;j++))doif [ $j -eq 3 ]			<------如果j的值为3thenbreak				<------跳出当前循环(内部)fi  echo -e "\t此${j}为内部循环"done
done

2.exit的使用

#!/bin/bash
for ((i=1;i<5;i++))
doecho 此${i}为外部循环for((j=1;j<4;j++))doif [ $j -eq 3 ]					<------如果j的值为3thenexit						<------结束当前脚本fiecho -e "\t此${j}为内部循环"done
done

3.continue的使用

#!/bin/bash
for ((i=1;i<5;i++))
doecho 此${i}为外部循环for((j=1;j<4;j++))doif [ $j -eq 2 ]					<------如果j的值为2thencontinue					<------中止循环中本次的命令,但不会完全中止整个循环或脚本fiecho -e "\t此${j}为内部循环"done
done

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/647737.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Leetcode:二分搜索树层次遍历

题目&#xff1a; 给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 示例&#xff1a; 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;[[3],[9,…

使用阿里云的oss对象存储服务实现图片上传(前端vue后端java详解)

一&#xff1a;前期准备&#xff1a; 1.1&#xff1a;注册阿里云账号&#xff0c;开启对象存储oss功能&#xff0c;创建一个bucket&#xff08;百度教程多的是&#xff0c;跟着创建一个就行&#xff0c;创建时注意存储类型是标准存储&#xff0c;读写权限是公共读&#xff09;…

《吐血整理》高级系列教程-吃透Fiddler抓包教程(24)-Fiddler如何优雅地在正式和测试环境之间来回切换-中篇

1.简介 在开发或者测试的过程中&#xff0c;由于项目环境比较多&#xff0c;往往需要来来回回地反复切换&#xff0c;那么如何优雅地切换呢&#xff1f;宏哥今天介绍几种方法供小伙伴或者童鞋们进行参考。 2.实际工作场景 2.1问题场景 &#xff08;1&#xff09;已发布线上…

YOLOv8改进 | Conv篇 | 利用DualConv二次创新C2f提出一种轻量化结构(轻量化创新)

一、本文介绍 本文给大家带来的改进机制是利用DualConv改进C2f提出一种轻量化的C2f,DualConv是一种创新的卷积网络结构,旨在构建轻量级的深度神经网络。它通过结合33和11的卷积核处理相同的输入特征映射通道,优化了信息处理和特征提取。DualConv利用组卷积技术高效排列卷积…

JavaScript基础之输入输出与变量常量详解

输入和输出 输出和输入也可理解为人和计算机的交互&#xff0c;用户通过键盘、鼠标等向计算机输入信息&#xff0c;计算机处理后再展示结果给用户&#xff0c;这便是一次输入和输出的过程。 举例说明&#xff1a;如按键盘上的方向键&#xff0c;向上/下键可以滚动页面&#x…

unity 装饰器模式(实例详解)

文章目录 简介1. **组件装饰器&#xff08;Component Decorators&#xff09;**:2. **游戏对象特效装饰器&#xff08;GameObject Effects Decorator&#xff09;**:3. **输入处理装饰器&#xff08;Input Handling Decorators&#xff09;**:4. **性能优化装饰器&#xff08;P…

70从零开始学Java之Collection与Collections有什么区别?

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦 CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者 前言 截止到现在,壹哥已经把Java里的List、Set和Map这三大集合都给大家讲解完毕了,不知道各位掌握了多少呢?如果你对之前的内容还没有熟练掌握,可以把壹哥前…

day32WEB 攻防-通用漏洞文件上传二次渲染.htaccess变异免杀

本章节知识点&#xff1a; 1 、文件上传 - 二次渲染 2 、文件上传 - 简单免杀变异 3 、文件上传 -.htaccess 妙用 4 、文件上传 -PHP 语言特性 前置知识&#xff1a; 后门代码需要用特定格式后缀解析&#xff0c;不能以图片后缀解析脚本后门代码 ( 解析漏洞除外 ) 如&…

codeforces 1200分

文章目录 1.[B. Same Parity Summands](https://codeforces.com/contest/1352/problem/B)2.[C. Challenging Cliffs](https://codeforces.com/problemset/problem/1537/C)3.[B. Sorted Adjacent Differences](https://codeforces.com/contest/1339/problem/B)4.[C1. k-LCM (eas…

应急响应-windows-日志分析

日志概述 在windows系统中&#xff0c;日志文件包括&#xff1a;系统日志、安全性日志及应用程序日志&#xff0c;对于应急响应工程师来说这三类日志需要熟练掌握&#xff0c;其位置如下。 在windows 2000专业版/windows XP/Windows Server 200&#xff08;注意日志文件的后缀…

swagger2 和 knife4j 整合

swagger整合knife4j 导入依赖 <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>3.0.2</version></dependency>引入配置 我们自己写一个配置类也好,我这里写…

Unity制作右键菜单(自适应分辨率)

一、需求 右键触发打开菜单&#xff0c;左键在内部可选择选项&#xff0c;左键单击菜单范围外关闭。难点在于屏幕坐标系&#xff0c;鼠标位置&#xff0c;UI位置之间的关系。 二、理论 前置知识&#xff1a; unity中&#xff0c;用RectTransform对象的position.x和position.y表…

JavaScript 学习笔记(JS进阶 Day2)

「写在前面」 本文为 b 站黑马程序员 pink 老师 JavaScript 教程的学习笔记。本着自己学习、分享他人的态度&#xff0c;分享学习笔记&#xff0c;希望能对大家有所帮助。推荐先按顺序阅读往期内容&#xff1a; 1. JavaScript 学习笔记&#xff08;Day1&#xff09; 2. JavaSc…

【前端开发】Font Awesome 一个基于CSS和LESS的免费图标库工具包,下载与使用教程!

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;web开发者、设计师、技术分享博主 &#x1f40b; 希望大家多多支持一下, 我们一起学习和进步&#xff01;&#x1f604; &#x1f3c5; 如果文章对你有帮助的话&#xff0c;欢迎评论 &#x1f4ac;点赞&a…

MATLAB知识点:min : 求最小值 和 max:求最大值

​讲解视频&#xff1a;可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇&#xff08;数学建模清风主讲&#xff0c;适合零基础同学观看&#xff09;_哔哩哔哩_bilibili 节选自第3章 3.4.1节 min : 求最小值&#xff08;minimum va…

小迪安全23WEB 攻防-Python 考点CTF 与 CMS-SSTI 模版注入PYC 反编译

#知识点&#xff1a; 1、PYC 文件反编译 2、Python-Web-SSTI 3、SSTI 模版注入利用分析 各语言的SSIT漏洞情况&#xff1a; SSIT漏洞过程&#xff1a; https://xz.aliyun.com/t/12181?page1&time__1311n4fxni0Qnr0%3DD%2FD0Dx2BmDkfDCDgmrYgBxYwD&alichlgrefhtt…

链表--226. 翻转二叉树/medium 理解度A

226. 翻转二叉树 1、题目2、题目分析3、复杂度最优解代码示例4、适用场景 1、题目 给你一棵二叉树的根节点 root &#xff0c;翻转这棵二叉树&#xff0c;并返回其根节点。 示例 1&#xff1a; 输入&#xff1a;root [4,2,7,1,3,6,9] 输出&#xff1a;[4,7,2,9,6,3,1]示例 2&…

windows?linux?如何使用JMeter

windows?linux?如何使用JMeter 安装JMeter的步骤以GUI模式启动JMeter如何在非GUI模式下运行JMeter在linux中使用JMeter 安装JMeter的步骤 JMeter 是一个纯 Java应用程序&#xff0c;应该在任何具有兼容Java实现的系统上正确运行。 安装 JMeter 的步骤 步骤1&#xff09;安…

小迪安全21WEB 攻防-JavaWeb 项目JWT 身份攻击组件安全访问控制

#知识点&#xff1a; 1、JavaWeb 常见安全及代码逻辑 2、目录遍历&身份验证&逻辑&JWT 3、访问控制&安全组件&越权&三方组件 Java&#xff1a;大部分都是第三方插件出现漏洞 webgoat的搭建&#xff1a;——java靶场 JDK版本要求&#xff1a;11.0…

应用案例 | 基于三维机器视觉的螺钉抓取上料解决方案

近年来&#xff0c;机器人技术日新月异&#xff0c;为各行各业的发展注入了新的活力。制造业作为一项工作内容重复、劳作时间长的产业&#xff0c;对自动化改造需求最为迫切&#xff0c;因此&#xff0c;也是机器人技术渗透最早、最广的产业。 螺钉抓取在制造业的应用十分广泛&…