当前位置: 首页 > 编程笔记 >

Shell中的循环语句for、while、until实例讲解

司空学智
2023-03-14
本文向大家介绍Shell中的循环语句for、while、until实例讲解,包括了Shell中的循环语句for、while、until实例讲解的使用技巧和注意事项,需要的朋友参考一下

在编程语言中,循环语句是最基本的语法之一,在Shell(这里是Bash)中也不例外,再把以前自己写过的相关内容整理一下吧。
这里包括for/while/until循环,以及变量自增的语法实例。

Shell(以Bash为例)中的循环语句一般有for、while、until这几种,偶尔还有写错语法的时候,这里结合实例来自己总结一下。也为今后使用提供一个快捷的资料获取渠道。

一、for循环语句
实例1.1 最基本的for循环: (传统的形式,for var in …)

#!/bin/bash
for x in one two three four
do
        echo number $x
done

注:”for” 循环总是接收 “in” 语句之后的某种类型的字列表。在本例中,指定了四个英语单词,但是字列表也可以引用磁盘上的文件,甚至文件通配符。
实例1.2 对目录中的文件做for循环
#!/bin/bash
for x in /var/log/*
do
        #echo "$x is a file living in /var/log"
        echo $(basename $x) is a file living in /var/log
done

注:这个$x获得的是绝对路径文件名;可以使用 “basename” 可执行程序来除去前面的路径信息。如果只引用当前工作目录中的文件(例如,如果输入 “for x in *”),则产生的文件列表将没有路径信息的前缀。
实例1.3 对位置参数做for循环
#!/bin/bash
for thing in "$@"
do
        echo you typed ${thing}.
done

实例1.4 for循环中用seq产生循环次数,加上C语言形式的for循环语句
#!/bin/bash
echo "for: Traditional form: for var in ..."
for j in $(seq 1 5)
do
        echo $j
done

echo "for: C language form: for (( exp1; exp2; exp3 ))"

for (( i=1; i<=5; i++ ))
do
        echo "i=$i"
done

注:对于固定次数的循环,可以通过seq命令来实现,就不需要变量的自增了;这里的C语言for循环风格是挺熟悉的吧。

二、while循环语句

实例2.1 循环输出1到10的数字

#!/bin/bash
myvar=1
while [ $myvar -le 10 ]
do
        echo $myvar
        myvar=$(( $myvar + 1 ))
done

注:只要特定条件为真,”while” 语句就会执行

三、until循环语句

实例3.1 循环输出1到10的数字
“Until” 语句提供了与 “while” 语句相反的功能:只要特定条件为假,它们就重复。下面是一个与前面的 “while” 循环具有同等功能的 “until” 循环。

#!/bin/bash
myvar=1
until [ $myvar -gt 10 ]
do
        echo $myvar
       myvar=$(( $myvar + 1 ))
done

Linux Shell中写循环时,常常要用到变量的自增,现在总结一下整型变量自增的方法。
我所知道的,bash中,变量自增,目前有五种方法:
1. i=`expr $i + 1`;
2. let i+=1;
3. ((i++));
4. i=$[$i+1];
5. i=$(( $i + 1 ))
可以实践一下,简单的实例如下:
#!/bin/bash
i=0;
while [ $i -lt 4 ];
do
      echo $i;
      i=`expr $i + 1`;
      # let i+=1;
      # ((i++));
      # i=$[$i+1];
      # i=$(( $i + 1 ))
done

 类似资料:
  • 本文向大家介绍Python基础之循环语句用法示例【for、while循环】,包括了Python基础之循环语句用法示例【for、while循环】的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python基础之循环语句用法。分享给大家供大家参考,具体如下: while 循环 Python中while语句的一般形式: while 判断条件:     statements 同样需要注意冒号和缩进

  • 本文向大家介绍C#中循环语句:while、for、foreach的使用,包括了C#中循环语句:while、for、foreach的使用的使用技巧和注意事项,需要的朋友参考一下 循环结构可以实现一个程序模块的重复执行,它对于我们简化程序,更好地组织算法有着重要的意义。C#为我们提供了若干种循环语句,分别适用于不同的情形,下面依次介绍。 C#中循环语句:while、for、foreach   1、wh

  • 本文向大家介绍C#中while循环语句用法实例详解,包括了C#中while循环语句用法实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#中while循环语句用法。分享给大家供大家参考。具体实现方法如下: 在C#中while循环是我们经常会用到的一种循环语句,while循环特点是直到条件为零时才跳出循环,当然中间可以利用其它函数直接跳出,对于while的具体用法有必要做一个较为详尽

  • 本文向大家介绍对Linux下shell编程之for循环的实例讲解,包括了对Linux下shell编程之for循环的实例讲解的使用技巧和注意事项,需要的朋友参考一下 linux 下 for 循环中可以使用 break 和 continue 关键字来跳出循环, 和java 用法一致 一、常用for循环结构 二、常用测试结构 1. 输出3次uptime 2. 批量解压缩当前文件夹下所有的.tar.gz

  • Python 中,while 循环和 if 条件分支语句类似,即在条件(表达式)为真的情况下,会执行相应的代码块。不同之处在于,只要条件为真,while 就会一直重复执行那段代码块。 while 语句的语法格式如下: while 条件表达式:     代码块 这里的代码块,指的是缩进格式相同的多行代码,不过在循环结构中,它又称为 循环体。 while 语句执行的具体流程为:首先判断条件表达式的值,

  • 本文向大家介绍Java中for、while、do while三种循环语句的区别介绍,包括了Java中for、while、do while三种循环语句的区别介绍的使用技巧和注意事项,需要的朋友参考一下 本文通过实例讲解给大家介绍Java中for、while、do while三种循环语句的区别,具体详情如下所示: 第一种:for循环  循环结构for语句的格式: eg:   输出结构为30 第二种wh