Eu encontrei este script link :
#!/bin/bash
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
for i in 'ls -1 *.mp3'
do
TITLE="'id3info "$i" | grep '^=== TIT2' | sed -e 's/.*: //g''"
ARTIST="'id3info "$i" | grep '^=== TPE1' | sed -e 's/.*: //g''"
ALBUM="'id3info "$i" | grep '^=== TALB' | sed -e 's/.*: //g''"
YEAR="'id3info "$i" | grep '^=== TYER' | sed -e 's/.*: //g''"
TRACKNUM="'id3info "$i" | grep '=== TRCK' | sed -e 's/.*: //g''"
if [ -e "$TITLE" ]; then
TITLE="Unknown"
fi
if [ -e "$ARTIST" ]; then
ARTIST="Unknown"
fi
if [ -e $ALBUM ]; then
ALBUM="Unknown"
fi
if [ -e $YEAR ]; then
YEAR="Unknown"
fi
if [ -e $TRACKNUM ]; then
TRACKNUM="Unknown"
fi
echo "$ARTIST $TITLE $ALBUM $YEAR $TRACKNUM"
install -D "$i" /storage/Multimedia/Music/"$ARTIST"/"$ALBUM"/"$i"
echo "/storage/Multimedia/Music/$ARTIST/$ALBUM/$i" >> filelist.txt
done
IFS=$SAVEIFS
Obviamente, você precisará modificar isso para usar suas pastas específicas. Ela exige que todas as músicas não selecionadas estejam em uma pasta e não entrem em subpastas, mas, além disso, é ótimo.