Shell编程中常用的循环控制语句

一、for循环

for循环是Shell编程中最常用的循环控制语句之一,其基本语法如下:

for 变量名 in 循环列表
do
    循环体
done

其中,变量名用于保存每次迭代的值,循环列表可以是一组字符串或者一个命令的输出结果。例如:

for i in 1 2 3 4 5
do
    echo $i
done

上面的代码会输出1到5,每个数字一行。如果使用命令的输出结果进行循环,则需要使用反引号或者$(命令)的方式,例如:

for file in `ls /tmp`
do
    echo $file
done

for file in $(ls /tmp)
do
    echo $file
done

上面两个代码段都会输出/tmp目录下的文件名。

二、while循环

while循环是另一种常见的循环控制语句,其基本语法如下:

while 条件
do
    循环体
done

while循环会根据条件不断地执行循环体,直到条件不成立为止。例如:

i=1
while [ $i -le 5 ]
do
    echo $i
    i=$((i+1))
done

上面的代码会输出1到5,每个数字一行。

三、until循环

until循环是和while循环相似的一种循环控制语句,其语法如下:

until 条件
do
    循环体
done

与while循环相反的是,until循环会在条件成立之前不断地执行循环体,直到条件成立为止。例如:

i=1
until [ $i -gt 5 ]
do
    echo $i
    i=$((i+1))
done

上面的代码会输出1到5,每个数字一行。

四、break和continue语句

在循环中,有时候需要跳出循环或跳过某次循环,这时候可以使用break和continue语句。

break语句可以跳出当前的循环,例如:

for i in 1 2 3 4 5
do
    if [ $i -eq 3 ]
    then
        break
    fi
    echo $i
done

上面的代码会输出1和2,当$i等于3时跳出循环。

continue语句可以跳过当前的循环,直接开始下一次循环,例如:

for i in 1 2 3 4 5
do
    if [ $i -eq 3 ]
    then
        continue
    fi
    echo $i
done

上面的代码会输出1、2、4和5,当$i等于3时跳过本次循环。

五、案例:统计某个目录下的文件数和目录数

#!/bin/bash
dir=$1
if [ ! -d $dir ]
then
    echo "$dir is not a directory"
    exit 1
fi

file_count=0
dir_count=0

for file in $dir/*
do
    if [ -f $file ]
    then
        file_count=$((file_count+1))
    elif [ -d $file ]
    then
        dir_count=$((dir_count+1))
    fi
done

echo "File count: $file_count"
echo "Directory count: $dir_count"

上面的代码可以统计某个目录下的文件数和目录数,其中使用了for循环和if语句。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/246439.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-12 13:15
下一篇 2024-12-12 13:15

相关推荐

  • Python3支持多行语句

    Python3是一种高级编程语言,开发人员可以轻松地使用该语言编写简单到复杂的代码。其中Python3支持多行语句,方便开发人员编写复杂的代码,提高代码的可读性和可维护性。 一、使…

    编程 2025-04-29
  • Python 常用数据库有哪些?

    在Python编程中,数据库是不可或缺的一部分。随着互联网应用的不断扩大,处理海量数据已成为一种趋势。Python有许多成熟的数据库管理系统,接下来我们将从多个方面介绍Python…

    编程 2025-04-29
  • Python for循环语句打印九九乘法表

    本篇文章将详细介绍如何使用Python的for循环语句打印九九乘法表。打印九九乘法表是我们初学Python时经常练习的一项基础操作,也是编写Python程序的基本能力之一。 1、基…

    编程 2025-04-29
  • Shell脚本与Python脚本的区别

    本文将从多个方面对Shell脚本与Python脚本的区别做详细的阐述。 一、语法差异 Shell脚本和Python脚本的语法存在明显差异。 Shell脚本是一种基于字符命令行的语言…

    编程 2025-04-29
  • Python中while语句和for语句的区别

    while语句和for语句是Python中两种常见的循环语句,它们都可以用于重复执行一段代码。然而,它们的语法和适用场景有所不同。本文将从多个方面详细阐述Python中while语…

    编程 2025-04-29
  • Python中自定义函数必须有return语句

    自定义函数是Python中最常见、最基本也是最重要的语句之一。在Python中,自定义函数必须有明确的返回值,即必须要有return语句。本篇文章将从以下几个方面对此进行详细阐述。…

    编程 2025-04-29
  • Python中升序排列的if语句

    本文将为大家介绍Python中升序排列的if语句。首先,我们来看一下如何实现。 if a > b: a, b = b, a if b > c: b, c = c, b …

    编程 2025-04-29
  • Python序列的常用操作

    Python序列是程序中的重要工具,在数据分析、机器学习、图像处理等很多领域都有广泛的应用。Python序列分为三种:列表(list)、元组(tuple)和字符串(string)。…

    编程 2025-04-28
  • Python输出语句用法介绍

    Python作为一种高级编程语言,为编程带来了极大的便利和快捷。而输出语句则是Python编程中不可缺少的一部分,它能够让我们看到程序运行的结果、判断程序的正确性和优化程序等。本文…

    编程 2025-04-28
  • Python语句大全

    本文将详细阐述Python语句大全,并给出代码实例。 一、基本语句 Python基本语句包括赋值语句、条件语句、循环语句等,其中最基础的是赋值语句。如下: a = 1 b = 2 …

    编程 2025-04-28

发表回复

登录后才能评论