私の音楽フォルダを繰り返してすべての曲のメタデータを取得する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