Eu tenho uma árvore de diretórios muito específica na minha biblioteca de músicas. Eu gostaria de contar todos os álbuns, excluindo todos os subdiretórios.
Por exemplo, dada esta árvore de diretórios:
/music/
/music/Davis, Miles/
/music/Davis, Miles/Kind of Blue/
/music/Davis, Miles/Tutu/
/music/Hendrix, Jimi/
/music/Hendrix, Jimi/Axis Bold As Love/
/music/Hendrix, Jimi/Electric Ladyland/
/music/Hendrix, Jimi/Electric Ladyland/Disk 1
/music/Hendrix, Jimi/Electric Ladyland/Disk 2
Eu gostaria que o comando retornasse "4".
Então basicamente eu quero que o comando retorne o número de álbuns, ou, pontos de bônus se ele retornar "2" Interprets e "4" álbuns.
(E pontos de bónus duplos se também listar as interpretações e os álbuns.)
Como posso mais facilmente fazer isso?
Respostas:
Para ver os quatro álbuns:
Contá-los:
o
%q
O formato é usado aqui para evitar que os nomes dos álbuns com novas linhas sejam contados mais de uma vez.Para ver os artistas:
Para contar o número de artistas:
Os comandos acima assumem que
music
está no diretório atual. Se omusic
diretório é realmente/music
, em seguida, coloque um/
em frente demusic
em todos os comandos acima. Caso contrário, coloque na frente o caminho que vai chegarmusic
.fonte
Você pode usar
find
para listar todos os subdiretórios. Em seguida, basta contar o número de barras por linha e informar com que freqüência havia três delas:Usar
^//$
para obter o número de interpretações.fonte
Eu acho que você está procurando por um pouco de 'encontrar' mágica. Corrida
deve fornecer o número de álbuns da sua coleção. Corrida
deve retornar o número de artistas.
fonte