Jukebox com dialog para PCs antigos
Publicado por wellington (última atualização em 27/06/2018)
[ Hits: 1.652 ]
Este script cria uma playlist com o dialog e executa os MP3 da pasta selecionada com uma interface simples e fácil, ideal para ser usada em um PC de poucos recursos.
Quem puder contribuir com alguma melhoria, será bem vindo ;)
#!/bin/bash #criando o loop principal proxima=primeira while : ; do case "$proxima" in primeira) proxima=segunda #mudando para o diretório de músicas cd /ntfs2/Musica #corrigindo o nome das pastas para serem lidas corretamente no dialog #(este comando só precisa ser executado uma vez para retirar os espaços dos nomes dos diretórios e depois pode ser comentado/retirado). #find . -name "*" -type d | while read line; do mv "$line" "$(echo $line | sed 's/ /_/g')"; done #criando a primeira lista (lista de estilos) dessa forma ela é atualizada cada vez que se executa a jukebox ls > /tmp/lista1.txt LISTA1=/tmp/lista1.txt PASTA1=$(dialog --backtitle 'by well' \ --title "JukeBox" \ --stdout \ --menu 'Escolha o que quer ouvir' 0 0 0 \ $( cat $LISTA1 | sed 's/$/ \\/')) ;; segunda) proxima=terceira anterior=primeira cd $PASTA1 #criando a segunda lista (lista de "bandas") dessa forma ela é atualizada cada vez que se executa a jukebox ls > /tmp/lista2.txt LISTA2=/tmp/lista2.txt PASTA2=$(dialog --backtitle 'by well' \ --title "JukeBox" \ --stdout \ --menu 'Escolha a Banda' 0 0 0 \ $(cat $LISTA2 | sed 's/$/ \\/')) ;; terceira) proxima=final anterior=segunda cd $PASTA2 #aqui, caso na segunda lista já tenhamos músicas elas serão executadas, se forem diretórios partiremos para a última lista mp3=$(ls -al | grep '^-' | awk '{ print $9 }') pasta=$(ls -al | grep '^d' | awk '{ print $9 }') for dir in $pasta; do if [ $dir != '.' ]; then if [ $dir != '..' ]; then #em caso de diretório será criando a terceira lista (lista de albúns) dessa forma ela é atualizada cada vez que se executa a jukebox ls > /tmp/lista3.txt ; LISTA3=/tmp/lista3.txt fi fi done for arq in $mp3; do #em caso de mp3's serão executadas ls -1 *.mp3 > lista.m3u ; #aqui temos um infoxbox com as músicas que serão tocadas dialog --cr-wrap --sleep 2 \ --backtitle '(Sair q) (Próxima f) (Anterior d) (Pause/Start s) (Volume + -)' \ --title 'JukeBox' \ --infobox \ "Músicas que você escolheu Tipo : $PASTA1 Banda : $PASTA2 Disco : $PASTA3 Músicas : \n`cat lista.m3u` " 0 0 ; mpg123 -@ lista.m3u -C -q ; exit done PASTA3=$(dialog --backtitle 'by well' --title "JukeBox" --stdout --menu 'Escolha o Disco' 0 0 0 $(cat $LISTA3 | sed 's/$/ \\/')) ;; final) anterior=terceira cd $PASTA3 ls -1 *.mp3 > lista.m3u #aqui temos um infoxbox com as músicas que serão tocadas dialog --cr-wrap --sleep 2 \ --backtitle '(Sair q) (Próxima f) (Anterior d) (Pause/Start s) (Volume + -)' \ --title 'JukeBox' \ --infobox \ "Músicas que você escolheu Tipo : $PASTA1 Banda : $PASTA2 Disco : $PASTA3 Músicas : \n`cat lista.m3u` " 0 0 mpg123 -@ lista.m3u -C -q break ;; *) esac #aqui o fim do loop retorno=$? [ $retorno -eq 1 ] && proxima=$anterior # cancelar [ $retorno -eq 255 ] && break # Esc done exit
Algoritmo para saber qual o maior número dentro de uma Array
Alterar valores de jogos em Flash
Nenhum coment�rio foi encontrado.
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Dica para encontrar diversos jogos Indies criativos
Instalando Discord no Debian 13
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Software livre - será que eu estou tão errado assim? (17)
Dificuldade com Ocs 2.12.3 no Debian 13 com Apache2 - Can't load ... (4)
paginação dos favoritos não funciona no vivaolinux[BU... (4)