Mediainfo情報から複数のディレクトリを作成し、音楽を入れる

Mediainfo情報から複数のディレクトリを作成し、音楽を入れる

私は音楽フォルダを調べて、すべての曲のメタデータを取得するbashスクリプトを持っていますメディア情報すべてのアーティストの名前からフォルダーを作成することを目的としていますが、失敗します。

これまでのコードは次のとおりです。

#!/bin/bash
cd Music/
for i in "$(ls -b | grep -v /)"; do
    info=$(mediainfo $i)
    artist=$(echo "$info" | grep "^Performer" | awk '{for(i=3;i<=NF;++i)printf $i""FS ; print ""}')
    mkdir "$artist"
done

何らかの理由で、まずすべての曲を調べてから、すべての曲の名前を組み合わせたディレクトリを作成しようとしているようです。私の意図は、各音楽ファイルで Mediainfo によって検出された演奏者のディレクトリを作成することです。

答え1

あなたはできるファイルを反復処理するそれなしls

for i in ./Music/*; do
    info=$(mediainfo "$i") # fixed to "$i"
    artist=$(echo "$info" | grep "^Performer" | awk '{for(i=3;i<=NF;++i)printf $i""FS ; print ""}')
    mkdir "$artist"
done

関連情報