Eu tenho uma pasta de músicas com playlists selecionadas em cada pasta intitulada "playlist.m3u" (também deve corresponder a *.m3u8).
O que eu gostaria de fazer é que um script de shell gere uma lista de reprodução concatenada com todas essas faixas selecionadas. Mas para que a lista de reprodução funcione corretamente, o nome da pasta deve ser anexado antes do título da música.
Aqui está um exemplo de estrutura de diretórios:
Main Folder
`-> Album 1/
*.flac
playlist.m3u
`-> Album 2/
*.flac
playlist.m3u
`-> Album 3/
*.mp3
playlist.m3u
O arquivo main-playlist.m3u resultante deve ser parecido com isto:
Album 1/01. Song1.flac
Album 1/02. Song2.flac
Album 1/03. Song3.flac
Album 1/04. Song4.flac
Album 2/1-01. Song1 (Disc 1).flac
Album 2/1-02. Song2 (Disc 1).flac
Album 2/2-01. Song1 (Disc 2).flac
Album 2/2-02. Song2 (Disc 2).flac
Album 3/001. Song 001.mp3
Album 3/002. Song 002.mp3
Album 3/003. Song 002.mp3
<...>
Album 3/100. Song 100.mp3
Album 3/101. Song 101.mp3
Qual é a melhor e mais eficiente maneira de fazer isso em uma biblioteca de músicas com, eventualmente, milhares de faixas?
Usar
find
? por exemplo:Ou com caminhos absolutos:
Não diferencia maiúsculas de minúsculas:
Se você realmente deseja extrair a lista desses arquivos “m3u”, algo assim funcionaria:
Ok, vou apenas postar uma maneira de descobrir isso.