使用Shell的for循环遍历文件夹

一、for循环介绍

对于Linux运维工程师来说,Shell编程是重要的技能之一,而for循环是Shell编程中最基本的命令之一,其语法如下:

for VARIABLE_NAME in ITEM_1 ITEM_2 ITEM_3 ... ITEM_N
do
    command1
    command2
    ...
    commandN
done

其中,VARIABLE_NAME表示循环迭代的变量,ITEM_1到ITEM_N为需要迭代的内容,command1到commandN为要执行的命令。

二、for循环遍历文件夹

现在,我们来看看如何使用for循环遍历文件夹。假设我们需要遍历名为Documents的文件夹,以下是对应的代码示例:

#!/bin/bash
for file in ~/Documents/*
do
    echo $file
done

在上述代码中,~代表当前用户的home目录,~/Documents/*代表要迭代的Documents文件夹下所有文件和文件夹的路径。echo命令将每个文件和文件夹的路径输出到终端。

如果我们需要过滤掉特定文件类型,则可以使用if语句进行判断。例如,只输出Documents文件夹下的PNG图片,则可以使用以下代码:

#!/bin/bash
for file in ~/Documents/*
do
    if [ ${file: -4} == ".png" ]
        then
            echo $file
    fi
done

在上述代码中,if语句判断$file的最后四位是否为”.png”,如果是,则输出文件路径。

三、for循环遍历多个文件夹

有些时候,我们需要遍历多个文件夹,这时可以使用嵌套的for循环。以下是遍历Documents和Downloads两个文件夹的示例代码:

#!/bin/bash
for dir in ~/Documents ~/Downloads
do
    for file in $dir/*
        do
            echo $file
    done
done

在上述代码中,第一个for循环遍历Documents和Downloads文件夹,第二个for循环遍历每个文件夹中的所有文件和文件夹,并输出它们的路径。

四、总结

本文介绍了如何使用for循环遍历文件夹,在遍历单个文件夹、过滤文件类型和遍历多个文件夹等方面进行了详细的阐述。通过这些示例代码,你可以更加灵活地掌握Shell编程中的for循环命令,提高你的工作效率。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-23 03:48
下一篇 2024-12-23 03:48

相关推荐

  • Idea新建文件夹没有java class的解决方法

    如果你在Idea中新建了一个文件夹,却没有Java Class,应该如何解决呢?下面从多个方面来进行解答。 一、检查Idea设置 首先,我们应该检查Idea的设置是否正确。打开Id…

    编程 2025-04-29
  • Python for循环求1到100的积

    Python中的for循环可以方便地遍历列表、元组、字典等数据类型。本文将以Python for循环求1到100的积为中心,从多个方面进行详细阐述。 一、for循环语法 Pytho…

    编程 2025-04-29
  • Python遍历集合中的元素

    本文将从多个方面详细阐述Python遍历集合中的元素方法。 一、for循环遍历集合 Python中,使用for循环可以遍历集合中的每个元素,代码如下: my_set = {1, 2…

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

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

    编程 2025-04-29
  • Python使用for循环打印99乘法表用法介绍

    本文介绍如何使用python的for循环语句来打印99乘法表,我们将从需要的基本知识、代码示例以及一些加强版来详细讲解。 一、基础知识 在学习如何使用for循环打印99乘法表之前,…

    编程 2025-04-29
  • Python如何遍历字典中的key和value

    本文将详细讲解Python中如何遍历字典中的key和value,包括多种遍历方式以及在遍历过程中的一些应用场景。 一、遍历字典中的key和value 在Python中,字典是一种无…

    编程 2025-04-29
  • 使用PHP foreach遍历有相同属性的值

    本篇文章将介绍如何使用PHP foreach遍历具有相同属性的值,并给出相应的代码示例。 一、基础概念 在讲解如何使用PHP foreach遍历有相同属性的值之前,我们需要先了解几…

    编程 2025-04-28
  • Python for循环优化

    本文将介绍如何对Python中的for循环进行优化。 一、使用range()代替直接迭代 Python中的for循环本质上是一种迭代操作,可以对列表、元组、集合等数据结构进行遍历。…

    编程 2025-04-28
  • 二叉树非递归先序遍历c语言

    本文将为您详细介绍二叉树的非递归先序遍历算法,同时提供完整的C语言代码示例。通过本文,您将了解到二叉树的先序遍历算法,以及非递归实现的方式。 一、二叉树的先序遍历算法介绍 在介绍二…

    编程 2025-04-28
  • Shell嵌入式介绍及应用

    本文将介绍Shell嵌入式的概念、特点和应用,并针对嵌入式系统开发中的一些问题,给出相应的解决方案。 一、Shell嵌入式概念 Shell嵌入式是一种将Shell(命令行解释器)嵌…

    编程 2025-04-28

发表回复

登录后才能评论