使用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/zh-hk/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
  • Python使用for循環打印99乘法表用法介紹

    本文介紹如何使用python的for循環語句來打印99乘法表,我們將從需要的基本知識、代碼示例以及一些加強版來詳細講解。 一、基礎知識 在學習如何使用for循環打印99乘法表之前,…

    編程 2025-04-29
  • Shell腳本與Python腳本的區別

    本文將從多個方面對Shell腳本與Python腳本的區別做詳細的闡述。 一、語法差異 Shell腳本和Python腳本的語法存在明顯差異。 Shell腳本是一種基於字符命令行的語言…

    編程 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
  • Shell嵌入式介紹及應用

    本文將介紹Shell嵌入式的概念、特點和應用,並針對嵌入式系統開發中的一些問題,給出相應的解決方案。 一、Shell嵌入式概念 Shell嵌入式是一種將Shell(命令行解釋器)嵌…

    編程 2025-04-28
  • 二叉樹非遞歸先序遍歷c語言

    本文將為您詳細介紹二叉樹的非遞歸先序遍歷算法,同時提供完整的C語言代碼示例。通過本文,您將了解到二叉樹的先序遍歷算法,以及非遞歸實現的方式。 一、二叉樹的先序遍歷算法介紹 在介紹二…

    編程 2025-04-28

發表回復

登錄後才能評論