Cree múltiples directorios a partir de la información de Mediainfo para colocar música

Cree múltiples directorios a partir de la información de Mediainfo para colocar música

Tengo un script bash que revisa mi carpeta de música y obtiene todos los metadatos de la canción.información de los mediosy se pretende hacer carpetas con los nombres de todos los artistas, pero falla.

Este es el código hasta el momento:

#!/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

Por alguna razón, parece revisar todas las canciones primero y luego intenta crear un directorio con todos sus nombres combinados; Mi intención es crear un directorio para el intérprete que Mediainfo encuentra en cada archivo de música.

Respuesta1

PuedeIterar sobre archivossin 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

información relacionada