Bash - サブディレクトリを繰り返してファイルを抽出する方法

Bash - サブディレクトリを繰り返してファイルを抽出する方法

10K_TIF(ホームディレクトリ)というディレクトリがあります。このデフォルトディレクトリには、それぞれtifイメージを含む複数のサブディレクトリがあります。各TIFイメージを読み、bashコマンドを使用してそのパスを抽出したいと思います。 10K_TIFサイズが15TBを超えています。

サンプル:

10K_TIF/4320cc/4320cc_01_rectified.tif
10K_TIF/4320cc/4320cc_02_rectified.tif
10K_TIF/4520cc/4520cc_01_rectified.tif
10K_TIF/4520cc/4520cc_02_rectified.tif

すべてのサブディレクトリをエコーし​​、すべてのtifイメージもエコーしましたが、これらのイメージは別々のコマンドにあります。

ベストアンサー1

あなたはそれを使用することができますfind

find 10K_TIF -iname '*TIF'

結果を繰り返し、各画像に対して特定のタスクを実行するには、次のように使用できます。

find 10K_TIF -iname '*TIF' | while read tif; do echo "Found: $tif"; done

上記は、ファイル名が正常で、空白や奇妙な文字がないと仮定しています。ファイル名にこれらの文字を含めることができる場合は、代わりに以下を使用してください。

find 10K_TIF -iname '*TIF' -print0 | 
    while IFS= read -r -d '' tif; do echo "Found: $tif"; done

おすすめ記事