shell脚本之for循环语句_shell脚本if判断

shell脚本之for循环语句_shell脚本if判断循环有:for、while、until什么是for循环呢?for循环逻辑:就是将循环列表中的元素赋值给变量,每次赋值便执行一次循环,done就标志着一个循环的结束。直到列表中的元素消耗殆尽,结束整个循环(也可以这么理解,因为某件事,你把你对象惹生气了,你是不是得道歉,道歉一次没用,是不是要第二遍,这是一个循环直到你对象原谅你这个循环才结束.也可以这么理解)for变量in值1值2值3do相当于大括号的上上半部分echo语句程序done相当于大括号的下半部分

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

shell脚本之for循环

循环有:for、while、until

什么是for循环呢?

for循环逻辑 :就是将循环列表中的元素赋值给变量,每次赋值便执行一次循环,done就标志着一个循环的结束。直到列表中的元素消耗殆尽,结束整个循环(也可以这么理解 ,因为某件事 ,你把你对象惹生气了,你是不是得道歉 ,道歉一次没用,是不是要第二遍 ,这是一个循环 直到你对象原谅你 这个循环才结束.也可以这么理解)

格式 :

for 变量 in 值1 值2 值3

do 相当于大括号的上上半部分

echo 语句程序

done 相当于大括号的下半部分

把每个值都带入你的变量里面按个进入 然后输出等待集合

!在这里插入图片描述

应用实例 :1

第一种格式 $* 把所有的参数看成一个整体

第二种格式 $@ 表示把每个参数分区对待

在 数量大的时候可以看出来 ∗ 和 * 和 @的区别是什么

案例实验 :

$* 输出的是一个整体

vim textfor.sh

注释一下环境 #!/bin/bash

for i in “ ∗ ∗ ” 这 个 是 什 么 意 思 : 是 把 **” 这个是什么意思 :是把 :* * 赋给i 这个变量 把&*这个值交给i然后把他输出echo的东西 如果是一次 就输出一次 如果是分开的 那就是 多次对应的输出

do

echo “the num is $i”

done

chmod 744 或者+x textfor.sh 给一个执行权限

./textfor.sh 执行

$@ 分开输出

vim textfor.sh

注释一下环境 #!/bin/bash

for i in “$@”

do

echo”the num is $i”

done

chmod 744 或者+x textfor.sh 给一个执行权限

./textfor.sh 10 20 30 执行

分开处理的 要注意一下 ∗ 和 *和 @的区别是什么

$* 整体处理

$@ 分开处理

就比如 把10 20 30 的值的和求出来个数不知道 就要用$@比较便利

第二种基本语法

for(初始值;循环控制条件 ;变量变化)

do

程序

done

案例 从1加到100的值输出显示 1一直加到100

vim testfor2.sh 创建一个for的脚本

!/bin/bash

sum=0的时候 sum是和的意思

for((i=1;i<=100;i++)) 括号里是什么意思 i等于1 ;i<=100 意思是当i大于等于100时 ;i++ 的意思是 i++是使用i之后再加一
do
SUM= [ [ [SUM+$i] 括号里是一个累计 括号里的sum和i累计过后再给前面的sum再输出最后的结果 注意这边用的是中括号【】

done
echo “SUM=$SUM” 输出最后姐结果

~

chmod 744 或者+x textfor.sh 给一个执行权限

./testfor2.sh

2.3乘法表
利用for循环,打印99乘法表
#!/bin/bash
for ((i=1;i<=9;i++)) #此处也可以写 for i in {1…9}
do
for ((j=1;j<=i;j++)) #此处也可写 for j in seq $i
do echo -n -e “ j ∗ j* ji=$[j*i]\t” #-n不换行输出;-e使用\转义符;\t横向制表;若不用-e,则\t为普通字符
done
echo
done

三.总结
1.for循环在实际生成中应用非常多,避免人工重复的去操作某个事情
2.for循环中的列表支持正则表达式
3.for循环中使用(()),双括号内支持C语言的命令
4.for循环中的变量,只是循环去取值列表中取值,然后进行do操作,所以取值列表中的参数个数,决定了循环的次数

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234609.html原文链接:https://javaforall.net

(0)
上一篇 2025年5月31日 下午2:15
下一篇 2025年5月31日 下午2:43


相关推荐

  • AWZ爱伪装常用问题汇总

    AWZ爱伪装常用问题汇总打开 AWZ 爱伪装时闪退或没有首次免费试用时间 1 Cydia 更新 页面 如果有提示更新 全部更新一下 2 安装源里的环境组件要安装 尤其是 OpenSSH 相同的组件不要重复安装 重复的任意卸载一个 3 iOS 设置 gt 通用 gt 日期与时间中 时间选自动设置 时区北京 4 确认手机已联网 且网络通畅 5 如果装过其它同类软件 请先卸载 6 iOS9 1 以上 设备重启后需要重新激活越狱 7

    2026年3月19日
    2
  • SpringBoot报错ERROR org.springframework.boot.SpringApplication – Application run failed[通俗易懂]

    SpringBoot报错ERROR org.springframework.boot.SpringApplication – Application run failed[通俗易懂]有时候启动springboot会成功,有时候会报下面的错误10:27:27.556[main]ERRORorg.springframework.boot.SpringApplication-Applicationrunfailedorg.yaml.snakeyaml.error.YAMLException:java.nio.charset.MalformedInputException:Inputlength=1 atorg.yaml.snakeyaml.reader.Str

    2025年10月11日
    6
  • Django(61)认证组件源码分析

    Django(61)认证组件源码分析认证组件源码入口APIView下的dispatch下的self.initial(request,*args,**kwargs),源码如下:definitial(self,request,

    2022年7月31日
    11
  • 方便实用——六款在线图片处理工具

    方便实用——六款在线图片处理工具PS已经不是唯一的照片处理方式了,你可以通过傻瓜式的图像处理工具来处理你的数码照片,你也可以选择在线图像处理网站来编辑你的数码照片,这样你不需要任何专业的图像处理技术就能制作出绚丽的专业数码照片效果,

    2022年7月3日
    24
  • fflush与fsync

    fflush与fsync区别:1、头文件不同fflush包含在头文件中;fsync包含在头文件中;2、参数不同fflush函数原型是:intfflush(FILE*fp);   即,fflush的参数时文件指针。fsync函数原型是:intfsync(intfd);   即,fsync的参数时文件描述符。2、应用层次不同fflush函数应用于用户层,将C语言函数库中的函数提

    2022年5月27日
    105
  • web前端 html+css+javascript网页设计实例 企业网站制作

    web前端 html+css+javascript网页设计实例 企业网站制作(案例源码链接在文章末尾,仅供学习参考)一、在浏览器中的运行结果:二、部分代码1.HTML:<!DOCTYPEhtml><html><headlang=”en”><metacharset=”UTF-8″><title>启乐官网</title><linkrel=”stylesheet”href=”style.css”/><scriptsrc=”myjs.j

    2022年6月16日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号