Como eu posso realmente ativar este script com fosse um screensaver ?

Valtoir S. Jardim wrote:
> Obrigado, Júlio.
> 
> Um pequeno acerto no script (ele não "pisava" na
> última coluna do terminal:
> 
> sed -i 's/left_foot=$(($RANDOM%$((`tput cols` -
> 13))))/left_foot=$(($RANDOM%$((`tput cols` - 12))))/' pes.sh
> 
> A próxima versão terá quase metade do código e será muito mais randômica.
> 
> T+
> 
> Valtoir
> 
> Em Qua, Maio 9, 2007 21:57, Júlio César Mauro escreveu:
>> Bem bolado e muito legal também ...
>>
>> pelas variaveis que tem nele, é um ótimo script de exemplo de case, while,
>> tput
>>
>> parabens
>>
>> On 5/9/07, Valtoir S. Jardim <[EMAIL PROTECTED]> wrote:
>>>
>>> Olá, pessoal.
>>>
>>> Sou cadastrado na lista há bastante tempo, mas não costumo participar e,
>>> para falar a verdade, sequer tenho tido tempo de ler as mensagens. Mas
>>> no
>>> final de semana passado resolvi terminar um pseudo screensaver em bash,
>>> que já tinha começado e não dava jeito de terminar. Na verdade já tenho
>>> uma outra versão do mesmo script, completamente reescrita e que achei
>>> bem
>>> melhor (e menor também), mas tenho que revisar uns detalhes. Quando
>>> estiver ok, publico para saber a opinião de vocês.
>>>
>>> Como podem ver, substituí os caracteres em branco da identação por "~".
>>> Nada que um "sed -i 's/~/ /g' pes.sh" não resolva. Segue o script :
>>>
>>>
>>> --------- pes.sh -----------------
>>>
>>> #!/bin/bash
>>> #  autor: Valtoir dos Santos Jardim
>>> # e-mail: valtoirjardim at gmail dot com
>>> #   blog: valtoir.blogspot.com
>>> #   data: 2007-05-05
>>> # versao: 0.1
>>> trap "clear; setterm -reset; exit" 2
>>> colors=(31 32 33 34 35 36 37)
>>> signal=( + - )
>>> while getopts "hc:" opt; do
>>> ~~~case $opt in
>>> ~~~~~~h) echo -e "\nUso: pes.sh -h | -c <caractere>"
>>> ~~~~~~~~~echo -e "\nParametros:"
>>> ~~~~~~~~~echo -e " -h: Mostra essa (grande) ajuda"
>>> ~~~~~~~~~echo -e " -c <caractere>: Limpa a tela e define caractere de
>>> preenchimento"
>>> ~~~~~~~~~echo -e "\nExemplo:"
>>> ~~~~~~~~~echo -e " pes.sh -c#\n"
>>> ~~~~~~~~~exit;;
>>> ~~~~~~c) clear;
>>> ~~~~~~~~~for i in $(seq 0 `tput lines`); do
>>> ~~~~~~~~~~~~for w in $(seq 1 `tput cols`); do
>>> ~~~~~~~~~~~~~~~~echo -e "$OPTARG\c"
>>> ~~~~~~~~~~~~done;
>>> ~~~~~~~~~~~~tput cup $i;
>>> ~~~~~~~~~done;;
>>> ~~~~~~?) exit -1;
>>> ~~~esac
>>> done
>>> setterm -cursor off -bold on
>>> while :; do
>>> ~~~moreorless=$((RANDOM%2))
>>> ~~~color=${colors[$(($RANDOM%${#colors[*]}))]}
>>> ~~~delay=.$(((RANDOM%8)+4))
>>> ~~~left_foot=$(($RANDOM%$((`tput cols` - 13))))
>>> ~~~right_foot=$(($left_foot + 8))
>>> ~~~lines=$(($(tput lines) - 5))
>>> ~~~[ "$moreorless" == "1" ] && {
>>> ~~~~~~tput cup $((lines + 5)) $left_foot
>>> ~~~~~~echo -e "\e[$color;1m.oooO\c\e[m"
>>> ~~~}
>>> ~~~for line in `seq $((($lines ${signal[$moreorless]} 1))) -10 5`; do
>>> ~~~~~~sleep $delay
>>> ~~~~~~tput cup $((line++)) $right_foot
>>> ~~~~~~echo -e "\e[$color;1mOooo.\e[m"
>>> ~~~~~~tput cup $((line++)) $right_foot
>>> ~~~~~~echo -e "\e[$color;1m(   )\e[m"
>>> ~~~~~~tput cup $((line++)) $((right_foot + 1))
>>> ~~~~~~echo -e "\e[$color;1m) /\e[m"
>>> ~~~~~~tput cup $((line++)) $right_foot
>>> ~~~~~~echo -e "\e[$color;1m(_/\c\e[m"
>>> ~~~~~~sleep $delay
>>> ~~~~~~tput cup $((line - 9)) $left_foot
>>> ~~~~~~echo -e "\e[$color;1m.oooO\e[m"
>>> ~~~~~~tput cup $((line - 8)) $left_foot
>>> ~~~~~~echo -e "\e[$color;1m(   )\e[m"
>>> ~~~~~~tput cup $((line - 7)) $((left_foot + 1))
>>> ~~~~~~echo -e "\e[$color;1m\ (\e[m"
>>> ~~~~~~tput cup $((line - 6)) $((left_foot + 2))
>>> ~~~~~~echo -e "\e[$color;1m\_)\e[m"
>>> ~~~done
>>> ~~~sleep $delay
>>> ~~~[ $((line -14)) -lt 0 ] || {
>>> ~~~~~~tput cup $((line - 14)) $right_foot
>>> ~~~~~~echo -e "\e[$color;1mOooo.\e[m"
>>> ~~~}
>>> ~~~[ $((line -13)) -lt 0 ] || {
>>> ~~~~~~tput cup $((line - 13)) $right_foot
>>> ~~~~~~echo -e "\e[$color;1m(   )\e[m"
>>> ~~~}
>>> ~~~[ $((line -12)) -lt 0 ] || {
>>> ~~~~~~tput cup $((line - 12)) $((right_foot + 1))
>>> ~~~~~~echo -e "\e[$color;1m) /\e[m"
>>> ~~~}
>>> ~~~[ $((line -11)) -lt 0 ] || {
>>> ~~~~~~tput cup $((line - 11)) $right_foot
>>> ~~~~~~echo -e "\e[$color;1m(_/\e[m"
>>> ~~~}
>>> ~~~sleep $delay
>>> ~~~[ $((line -18)) -lt 0 ] || {
>>> ~~~~~~tput cup $((line - 18)) $left_foot
>>> ~~~~~~echo -e "\e[$color;1m(   )\e[m"
>>> ~~~}
>>> ~~~[ $((line -17)) -lt 0 ] || {
>>> ~~~~~~tput cup $((line - 17)) $((left_foot + 1))
>>> ~~~~~~echo -e "\e[$color;1m\ (\e[m"
>>> ~~~}
>>> ~~~[ $((line -16)) -lt 0 ] || {
>>> ~~~~~~tput cup $((line - 16)) $((left_foot + 2))
>>> ~~~~~~echo -e "\e[$color;1m\_)\e[m"
>>> ~~~}
>>> done
>>>
>>> T+
>>>
>>> Valtoir
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> Esta lista não admite a abordagem de outras liguagens de programação,
>>> como
>>> perl, C etc. Quem insistir em não seguir esta regra será moderado sem
>>> prévio
>>> aviso.
>>> ---------------------------------------------------------------------
>>> Sair da lista: [EMAIL PROTECTED]
>>> ---------------------------------------------------------------------
>>> Esta lista é moderada de acordo com o previsto em
>>> http://www.listas-discussao.cjb.net
>>> ---------------------------------------------------------------------
>>> Servidor Newsgroup da lista: news.gmane.org
>>> Grupo: gmane.org.user-groups.programming.shell.brazil
>>>
>>>
>>> Links do Yahoo! Grupos
>>>
>>>
>>>
>>
>> --
>> :wq!
>>
>> Júlio César Mauro
>> ------------------------------------------------
>> HWC #2776
>> Skype: juliocesarmauro
>> MSN: [EMAIL PROTECTED]
>> LPI #: LPI000103014
>> GNU/Linux User #  114287
>> ------------------------------------------------
>> "Porque eu, o Senhor teu Deus, te tomo pela tua mão direita, e te digo:
>> Não
>> temas, que eu te ajudo"
>> Isaías 41:13
>>
>>
>> [As partes desta mensagem que não continham texto foram removidas]
>>
>>
> 
> 
> 
> 
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
> 
>  
> Links do Yahoo! Grupos
> 
>  

Responder a