Desligando o computador quando acabarem as músicas na sua lista de reprodução do MPD

O título é autoexplicativo. Sobre o "#!/usr/bin/env bash", podemos quebrar em duas partes: O sheebang é a forma padrão de especificar que um certo arquivo é um script. O "/usr/bin/env" tem um artigo na Wikipédia só para ele ( https://pt.wikipedia.org/wiki/Env ) e várias perguntas/respostas no StackOverflow. O comando grep é usado para filtrar a saída do comando mpc. A opção "-F" tem o mesmo efeito do comando fgrep, mas é preferível devido a recomendação da manpage, "Direct invocation as either egrep or fgrep is deprecated". A opção "-q" é usada por questões de desempenho. Como só estamos interessados em saber se o padrão "playing" está presente ou não, não faz sentido imprimir as ocorrências e, também, não faz sentido continuar a busca após descobrir que a ocorrência existe. Além do desempenho, nós realmente não queremos que a saída seja impressa. A opção "-s" é usada para suprimir mensagens de erro. Algumas pessoas gostam também de especificar a opção "-o", para instruir o grep a só imprimir o padrão que foi pesquisado, mas é inútil dada que a opção "-q" foi utilizada. Talvez seja útil como uma garantia maior em ambientes diferentes que usam implementações diferentes do bash, mas já utilizamos comportamento específico do grep GNU de qualquer forma (consulte a manpage). O comando ":" é o comando que não faz nada (se não acredita, consulte "help :") e é usado, porque a construção while exige um corpo. Poderia ser substituído por "sleep 1", para não ficar consumindo processamento da CPU o tempo todo, mas como meu PC é um quad-core e esse script exige poucos recursos, não me importei com isso. Também poderia ser substituído por "mpc current -w", que faria o trabalho de esperar a música atual acabar, mas isso pode criar uma race condition não desejada. Por último, temos o já conhecido comando "shutdown -h now", que hoje em dia poderia (algo desnecessário) ser substituído por "systemctl halt".

Por: Vinícius dos Santos Oliveira


GoogleChromeUpdate.sh para Slackware

Fiz esse pequeno script para ajudar na atualização constante do Google Chrome. Como o Google só oferece updates automáticos para Debian e sistemas RPM, as outras distribuições ficam a mercê da comunidade. No caso do Slackware, existe um SlackBuild oficial para transformar o Google Chrome .deb em .t{g,x}z na pasta extra do DVD. Para simplificar a utilização desse script, crie a pasta SlackBuilds em sua pasta do usuário. No terminal: $ mkdir ~/SlackBuilds $ cd SlackBuilds $ lftp -c 'open ftp://ftp.slackware-brasil.com.br/slackware64-14.1/extra/ ; mirror google-chrome' Após esses comandos, o script está pronto para ser executado. Se você usa o KDE, recomendo incluir o script no Agendador de Tarefas para que seja executado todos os dias. Eu deixo o meu para ser executado toda vez que o sistema é iniciado. O script é otimizado para ser usado em conjunto com o KDE, devido a utilização do kdialog para informar o usuário se há ou não atualização. Mas isso pode ser alterado facilmente. Caso queira rodar no terminal: $ ./GoogleChromeUpdate.sh 1 O script se encarrega de baixar e comparar o Google Chrome instalado no sistema com a versão nova baixada e, se caso as versões forem diferentes, o pacote .deb é movido para o diretório ~/SlackBuilds/google-chrome. A partir daí é só rodar o google-chrome.SlackBuild fornecido pelo DVD do Slackware e atualizar o pacote com o upgradepkg.

Por: Perfil removido


Propriedades do computador

Sabe quando no velho Windows, você clica com o botão direito em "Meu Computador" e depois em Propriedades?! Foi mais ou menos isso que eu quis recriar quando bolei esse script, fiz antes de tudo pra treinar minha habilidade com comandos shell no meu Debian. Não estranhem alguns pontos (..) espalhados pelo código, eles estão servindo de moldura no layout da saída.

Por: Alan Patriota


Gerador de senhas aleatórias com pwgen

Script simples que gera senhas aleatórias utilizando o pwgen. A senha é exibida na tela e gravada em um arquivo TXT. É necessário tem o pacote pwgen instalado.

Por: Perfil removido


Consulta operadora

Um script simples que utiliza o site http://www.qualoperadora.net/ para verificar a operadora de um número de celular ou fixo.

Por: Mauricio Calligaris


Montar pasta remota NFS em Zenity

Simples script em Zenity para apenas montar uma pasta remota NFS na sua rede local. Nota: Para abrir o compartilhamento remoto automaticamente com o seu gerenciador de arquivos preferido no final da linha que tem o comando mount, coloque: ; xfe "$montagem" & Onde "xfe" é o seu gerenciador de arquivos. Exemplo: sudo mount -t nfs -o soft "$servidor" "$montagem" ; xfe "$montagem" &

Por: Fernando T. Da Silva






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts