各サブフォルダの最新ファイルを一覧表示

各サブフォルダの最新ファイルを一覧表示

私のファイル構造は次のとおりです

FOLDER/SUB_FOLDER/Text_File

私はそれらのうちの1,000以上を持っておりFOLDER、それぞれは少なくともFOLDER2つの異なるものを持っています。SUB_FOLDERSUB_FOLDERText_File

私は一番多くのリストを作るために自分自身に挑戦しようとしています。最近 Text_FileFOLDER/(ルート)

My Pseudo code is (as well as commands I know right now): 
List all FOLDERS
 - **ls -t [EACH_FOLDER] | head -n1 **
    **ls -t EACH_FOLDER/SUB_FOLDER/**
      **ls Text_File**

出力は次のようになります。

/FOLDER/SUB_FOLDER/Text_File

...

すべてのファイル。

私の目標は、すべてのルートディレクトリのすべての最新のText_FileをgrepしてFOLDER情報を解析することです。

ベストアンサー1

#!/bin/bash

# Array of root folders
folders=("a" "b")

# Search all specified root folders
for f in ${folders[@]}; do
    # Descend hierarchy and retrieve modification date of each file with "stat"
    find $f -type f -exec stat -f "%m,%N" {} ';' | \
        # sort by date, most recent first
        sort -gr | \
        # extract first (most recent) file
        head -1 | \
        # return file name only
        cut -d, -f2
done

おすすめ記事