내 음악 폴더를 반복하여 모든 노래 메타데이터를 가져오는 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