Player de música em Shell com Yad
Publicado por Raimundo Alves Portela (última atualização em 24/06/2023)
[ Hits: 7.266 ]
Homepage: http://portelanet.com
Download toca_musica_yad.sh (versão 2)
Mais um script para demonstrar as novas funcionalidades do Yad 0.16.x, dessa vez fiz um Tocador de musica em mp3 usando os Dialogs --form e --entry do Yad.
Para executá-lo você vai precisar do Mplayer e do Yad.
Para executar use:
./play_music_yad
Bom proveito.
Versão 2 - Enviado por Mario da Silva Santos em 22/06/2023
Changelog: As mudanças significativas foram:
1-trocar o Mplayer por Deadbeef (para funcionar no Puppy Linux Fossa 9.5)
2-e o find $HOME para find . e executar de dentro do diretorio com as musicas.
O Deadbeef toca do caminho completo ou de playlist .dbpl ou m3u
.dbpl eh o padrão, o próprio programa cria a lista no /root/.config/deadbeef
OBS: no Puppy Linux o usuário padrão eh o root
\o/'s a todos
#!/bin/bash # Desenvolvido por Raimundo Portela - rai3mb@gmail.com # Desenvolvido para demonstrar novas funcionalidades do Yad #------------------------------------------------------------------------------------------------------------------------------------ function barra() { tail -f $0 | yad --progress --title='Procurando...' --progress-text="buscando... $VALOR" --no-buttons --auto-close --undecorated } function _buscar() { VALOR=$( \ yad --entry --title='Buscar músicas' --on-top --center \ --entry-label="Buscar músicas sobre:" --entry-text="Digite aqui" \ --ricon="gtk-clear" --ricon-action="echo " \ --button='Cancelar':1 --button='Buscar':0 ) [ -z "$VALOR" ] && _main echo -n > "$LISTA" barra & find -L "$HOME"/Music "$HOME"/Musicas "$HOME"/Músicas -iname "*${VALOR}*.mp3" -exec echo "{}" >> "$LISTA" \; 2>/dev/null mv "$LISTA" "/tmp/temp.txt" echo -n > "$LISTA" while read MUSICA do echo "$MUSICA : \"${MUSICA##/*/}\"" >> "$LISTA" done < "/tmp/temp.txt" killall tail _main } function _tocar() { MUSICA=$(cat "$LISTA" | grep "$1" | cut -d: -f1) mplayer $MUSICA } function _main() { if [ ! -f "$LISTA" ]; then export LISTA='/tmp/lista_musicas.list' _buscar fi if yad --form --title='Player Musicas Shell Yad' --columns=3 --center \ --field='Musica':CB "$(cat $LISTA | cut -d':' -f2 | tr '\n' '!' )" \ --field='Tocar':BTN "./music_play.sh tocar %1" --field='Parar':BTN "killall -9 mplayer" --button='Fechar':1 --button='Buscar outro':0 then _buscar fi killall mplayer exit } case "$1" in 'buscar') shift; _buscar $* ;; 'tocar') shift; _tocar $* ;; *) _main ;; esac
Atualizando páginas automaticamente com Lynx
Estok SH 1.2b - Controle de Estoque em Shell Script
Instalando e Integrando o SWATCH com SNORT
Ligar máquinas virtuais Xen seguindo ordem de criação
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
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
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
Jogando com Proton no LInux (0)
Ingress NGINX Controller CVSS base score of 9.8 (4)
Impossível corrigir problemas, você manteve (hold) pacotes quebrados. (2)