欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解shell 遍歷文件夾內(nèi)所有文件并打印絕對(duì)路徑

 更新時(shí)間:2017年01月22日 15:50:22   作者:sinat_37394380  
本篇文章主要介紹了shell 遍歷文件夾內(nèi)所有文件并打印絕對(duì)路徑,具有一定的參考價(jià)值,有興趣的可以了解一下。

例如你有一個(gè)文件夾路徑是 /wls,如果想要遍歷這個(gè)文件夾內(nèi)的所有文件,并將它們保存到數(shù)組中,利用shell你可以這樣做

for file in /wls/*
do
    if test -f $file
    then
        arr=(${arr[*]} $file)
    fi
done
echo ${arr[@]}

這樣就可以遍歷wls文件夾下的所有文件并把它們的絕對(duì)路徑存在arr這個(gè)數(shù)組中,但這還是不夠的,因?yàn)槲募A中可能會(huì)有多個(gè)子文件夾,如果只過濾文件會(huì)遺漏掉子文件夾中的文件,所以需要擴(kuò)展上面的方法,如果我們只考慮兩級(jí)目錄的話可以這樣寫

for file in /wls/*
do
    if test -f $file
    then
        arr=(${arr[*]} $file)
    else
        for subfile in $file
            do
                if test -f $subfile
                then
                    arr=(${arr[*]} $subfile)
                fi
            done
    fi
done
echo ${arr[@]}

這樣就可以把目標(biāo)文件夾下的兩級(jí)目錄內(nèi)所有文件的絕對(duì)路徑獲取到,那么如果有多級(jí)子目錄的情況呢,這就要求我們?nèi)懸粋€(gè)function來協(xié)助我們

function getdir(){
    echo $1
    for file in $1/*
    do
    if test -f $file
    then
        echo $file
        arr=(${arr[*]} $file)
    else
        getdir $file
    fi
    done
}
getdir /wls
echo ${arr[@]}

通過遞歸調(diào)用getdir就可以實(shí)現(xiàn)將wls文件夾內(nèi)所有文件的絕對(duì)路徑保存到數(shù)組中。

以上的方法在處理NAS日志的問題中很有效,可以將所有日志文件遍歷一遍,當(dāng)然關(guān)于日志文件名的過濾這里要讀者自己實(shí)現(xiàn)。

相關(guān)文章

  • Shell中的數(shù)學(xué)運(yùn)算使用

    Shell中的數(shù)學(xué)運(yùn)算使用

    這篇文章主要介紹了Shell中的數(shù)學(xué)運(yùn)算使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 一張圖讓你學(xué)會(huì)Vim編輯器快捷鍵

    一張圖讓你學(xué)會(huì)Vim編輯器快捷鍵

    今天小編就為大家分享一篇一張圖讓你學(xué)會(huì)Vim編輯器快捷鍵,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python使用淘寶API查詢IP歸屬地功能分享

    Python使用淘寶API查詢IP歸屬地功能分享

    這篇文章主要介紹了Python使用淘寶API查詢IP歸屬地功能分享,本文可以查詢到國家、運(yùn)營商、區(qū)域、省份、城市、縣/區(qū)等,需要的朋友可以參考下
    2014-10-10
  • 使用Shell腳本如何啟動(dòng)/停止Java的jar程序

    使用Shell腳本如何啟動(dòng)/停止Java的jar程序

    這篇文章主要介紹了使用Shell腳本如何啟動(dòng)/停止Java的jar程序,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 找出Linux中所有真實(shí)用戶的命令詳解

    找出Linux中所有真實(shí)用戶的命令詳解

    接觸過 Linux 的小伙伴們都知道在 Linux (或者說類 Unix)中,有三種類型的用戶,超級(jí)用戶,系統(tǒng)用戶和普通用戶,那么如何快速找出 Linux 中的真實(shí)用戶呢,文中給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-02-02
  • 根據(jù)公司需求寫的一個(gè)linux 巡檢小腳本

    根據(jù)公司需求寫的一個(gè)linux 巡檢小腳本

    這篇文章主要介紹了根據(jù)公司需求寫的一個(gè)linux 巡檢小腳本,可以用來檢查服務(wù)器的一些運(yùn)行狀況,需要的朋友可以參考下
    2017-04-04
  • 常用Shell命令集合和使用技巧(推薦)

    常用Shell命令集合和使用技巧(推薦)

    這篇文章主要介紹了最常用Shell命令集合和使用技巧,本文分場景通過實(shí)例講解給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 如何查看Linux提供的Shell解析器

    如何查看Linux提供的Shell解析器

    這篇文章主要介紹了查看Linux提供的Shell解析器的相關(guān)知識(shí),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • shell腳本一鍵部署docker的實(shí)現(xiàn)步驟

    shell腳本一鍵部署docker的實(shí)現(xiàn)步驟

    作為一名經(jīng)驗(yàn)豐富的開發(fā)者,我們經(jīng)常需要使用Docker來快速部署各種應(yīng)用,本文主要介紹了shell腳本一鍵部署docker的實(shí)現(xiàn)步驟,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • shell監(jiān)控腳本實(shí)例—監(jiān)控mysql主從復(fù)制

    shell監(jiān)控腳本實(shí)例—監(jiān)控mysql主從復(fù)制

    分享一例shell腳本,用于監(jiān)測mysql數(shù)據(jù)庫的主從復(fù)制,有需要的朋友不妨參考學(xué)習(xí)下
    2013-11-11

最新評(píng)論