メインフォルダのサブフォルダにある .MP4 ファイルのファイルパスをテキストファイルに抽出します。

メインフォルダのサブフォルダにある .MP4 ファイルのファイルパスをテキストファイルに抽出します。

私は Mac を使用しています。ターミナルなどを使用して、複数レベルのサブフォルダーがあるフォルダー内の .MP4 ファイルのファイル パスを抽出したいと考えています。メイン フォルダーにはサブフォルダーがあります。各サブフォルダーには独自のサブフォルダーがあります。最終的に、この行に .MP4 ファイルがあります。各 .MP4 ファイルのファイル パスを、できれば間にカンマまたはセミコロンを入れて記載したテキスト ファイルが必要です。手伝っていただけますか?

いくつかのオプションを調べましたが、Windows 用か、あまり役に立たないものばかりでした。Windows の dir コマンドがおそらく関連しているようです。

答え1

次のようなものが役に立つかもしれません (RHEL でテスト済み):

printf "%s:" $(dirname $(find . -name "*.MP4") |sort -u)|sed 's/:$//'; echo

簡単な説明

find . -name "*.MP4"

ファイル名(パス付き)を検索する

dirname $(find . -name "*.MP4") |sort -u

ディレクトリ名を取得し、ソートして一意のディレクトリを取得します

printf "%s:" $(dirname $(find . -name "*.MP4") |sort -u)

ディレクトリ名とセミコロンを印刷する

sed 's/:$//'

最後のセミコロンを削除

echo 

最後に新しい行を追加します

関連情報