Jukebox com dialog para PCs antigos
Publicado por wellington (última atualização em 27/06/2018)
[ Hits: 1.747 ]
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
backup /home e /etc no crontab
Instalador de programas essenciais para seu desktop Ubuntu 12.04
Configurando clientes NIS em distros baseadas no Red Hat
Script simples de Backup para os diretórios listados abaixo do /
Nenhum comentário foi encontrado.
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Ativando e usando "zoom" no ambiente Cinnamon
Vídeo Nostálgico de Instalação do Conectiva Linux 9
Como realizar um ataque de força bruta para desobrir senhas?
Queda no serviços da Cloudflare, alguns sites estão fora do ar. (1)
Perfil criado no samba ad dc não loga no Windows 10 e 11 (11)









