Jukebox com dialog para PCs antigos
Publicado por wellington (última atualização em 27/06/2018)
[ Hits: 1.541 ]
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
System Software 2.0 - Instale e remova repositórios e programas de forma simples
Lista de programas, escolha e instalação
Descompactar arquivos RAR e ZIP em lote
Nenhum comentário foi encontrado.
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Problema de Comunicação Entre Bridges após Configuração de Links no RB... (0)
Instalação de Drive - USB para HDMI Ubuntu (0)
Meus HDs não aparecem mais no boot da placa mãe (16)
Instalação do Ubuntu 22.04 LTS (6)
Linux Mint com GForce 630 e 2 monitores dos quais só um está na resolu... (6)