Python を使用してディレクトリ ツリーから最近作成された 10 個のファイルを抽出する最適な方法を見つけようとしています。[1, 2] の興味深い解決策を見つけましたが、それらは 1 つのファイルしか関係していませんでした。
├── d1
│ ├── d1-1
│ ├── d1-1
:
├── d2
│ ├── d2-1
│ └── d2-2
│ │ ├── f1.xxx
: :
│ │ ├── fn.xxx
├── d3
│ ├── d3-1
:
:
現時点で考えられる唯一の方法は、10 個の結果が必要になるまで、同じツリーをループして繰り返し結果を追加することです。このアプローチの問題は、明らかに時間がかかることです...特に、ディレクトリツリーが巨大になる可能性があることです。私が考えた別の解決策は、ディレクトリ ツリー全体を解析し、対応する作成日または変更日を含むファイル名パスを生成し、その「インデックス」ファイルを使用して最近の上位 10 ファイルを取得することです。ここではデータベースがおそらく役に立ちましたが、現時点ではオプションではありません。
これを達成するための最適な方法を知っている人はいますか?
[1] Python は、ディレクトリに保存されている最新の csv ファイルのファイルパス/ファイル名を返します
[2]ディレクトリの内容をすべて読み取ることなく、ディレクトリ内の最新のファイルを検索します