[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] talvez seja uma pergunta absurda...
From: |
Djames Suhanko |
Subject: |
Re: [shell-script] talvez seja uma pergunta absurda... |
Date: |
Tue, 20 Jun 2000 08:25:56 +0000 |
Deus que te abençoe !!!!
Minha vontade é fazer um Script em sua homenagem e fazer um comercial de
televisao com ele !!!!
O B R I G A D O !!!!!!! Muito obrigado mesmo !!! Vou fazer de tudo pra usar
ao
máximo os recursos dessa super-aula !!
Hugo Cisneiros wrote:
> On Tue, 20 Jun 2000, you wrote:
> > Bom, agora ja dei uma impulsionada em voce, se eu conseguir encontrar a zine
> > que ensina, eu te dou o endereco.
>
> Ok, achei :)
> http://members.xoom.com/nearz/
> ---------------
> ÉÍÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÍ»
> þÄÄ´ [0x01] <iNf> ANSI RuLeZ ÃÄÄÄÄÄÄþ GhostOBtRuDeR þÄ
> ÈÍÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄͼ
>
> Existem muitos programas pra voce fazer ansi, mas o que eh ansi?
> ANSI -> American National Standards Institute, tipo nos soh vamos
> falar das cores e animacoes, deixando de lado um recurso do ansi
> que tem ha ver com teclado (que nunca testei em Linux, soh em DOS)
> As sequencias ANSI sao identificadas pelo Kernel no Linux e pelo
> ANSI.SYS no DOS (se voce nao consegue ver ansi no DOS tente colocar
> uma linha "DEVICEHIGH=C:\DOS\ANSI.SYS" no seu \config.sys, isso
> soh vai funcionar se voce tem o DOS, se voce soh tem o RwuIndowds95
> arranje com alguem o ANSI.SYS); com os seguintes caracteres(em Hexa)
> 1B5B / (em Octal) 033 133 / (em decimal) 27 91 / quem em caracteres
> seria ESC e "[" . Pra essas sequencias entrarem em acao devem
> ser imprimidas na tela por qualquer funcao que grave em stdout ou
> stderr, no DOS um programa que grave diretamente na tela nao ira
> apresentar a sequencia isso vale tambem pra programas que usam
> ncurses em Linux. Lembrando que as sequencias sao Case Sensitive
> Vamos a um exemplo, em shell script
>
> ---> exemplo1.sh <--------------------------------------------------{-CUtHeRe
> #!/bin/bash
> echo -e "\\033[1;36mN\\033[0;36mear\033[0;1;36mZ\033[0m"
> ---> exemplo1.sh <--------------------------------------------------}-CUtHeRe
>
> 8-) Parece complicado a primeira vista, mas tudo que o exemplo1 faz eh
> imprimir "NearZ" colorido, o "N" e o "Z" de azuis mais claros que o resto
> das outras letras. Lembrando que se voce for usar ansi em shellscripts
> voce pode usar o "echo -e \\033[..." (o "-e" serve pra identificar os
> codigos em Octal \\xxx) ou o "printf \x1B[...", se voce for
> usar em C "printf("%c[...",27);" e em perl "print "\033[..."
> Agora a lista de cores: (usarei "^" pra representar \x1B ou \\033 etc...)
>
> ^[0m > Desliga a cor anterior
> ^[1m > Negrito
> ^[2m > Escuro
> ^[4m > Sublinhado (monitores mono)
> ^[5m > Piscante
> ^[7m > Reverso
> ^[30m > Preto
> ^[31m > Vermelho
> ^[32m > Verde
> ^[33m > Amarelo
> ^[34m > Azul
> ^[35m > Rosa
> ^[36m > Azul piscina
> ^[37m > Branco
> ^[40m > Fundo Preto
> ^[41m > Fundo Vermelho
> ^[42m > Fundo Verde
> ^[43m > Fundo Amarelo
> ^[44m > Fundo Azul
> ^[45m > Fundo Rosa
> ^[46m > Fundo Azul pscina
> ^[47m > Fundo Branco
>
> Sao essas as cores, mas voce pode combina-las entre si, por exemplo
> pra gerar um fundo verde com o texto em azul negrito voce deve
> usar ^[42;1;34mFalaManow^[0m e nunca se esqueca de desligar as cores
> depois de cada sequencia.
>
> Animacoes
>
> Agora a parte um pouco "complicada" do ANSI que sao as animacoes, que nada
> mais eh que movimentar o cursor na tela...Vamos a um exemplo:
>
> ---> exemplo2.sh <--------------------------------------------------{-CUtHeRe
> #!/bin/bash
> for A in 1 2 3 4 5 6 7 8 :; do
> for B in 1 2 3 4 5 6 7 8 9 0 :; do
> echo -ne "\033[6D "
> echo -ne "\033[1;36mN\033[0;36mear\033[0;1;36mZ\033[0m"; true ;
> done ; done ; echo
> ---> exemplo2.sh <--------------------------------------------------}-CUtHeRe
>
> O que o exemplo2 faz eh executar 80 vezes (8*10) a sequencia que volta
> 6 caracteres atraz e imprimi "NearZ" nas cores do exemplo1, o "true"
> ali soh serve pra diminuir um pouco a velocidade da execucao, se o seu
> processador for um MMX coloque uns 5 true's ja que eu testei aki no 486 :)
> e ficou numa velocidade razoavel...Se entendeu ou nao aki vai a lista
> de sequencias pra movimentar o cursor:
>
> ^[nA > Move o cursor n linhas para cima
> ^[nB > Move o cursor n linhas para baixo
> ^[nC > Move o cursor n colunas aa direita
> ^[nD > Move o cursor n colunas aa esquerda
> ^[n;mf > Move o cursor para a linha n e coluna m
> ^[s > Salva a posicao atual do cursor
> ^[u > Restaura a posicao do cursor salva com ^[s
> ^[2J > Limpa a tela e coloca o cursor em 0,0
> ^[K > Limpa ate o final da linha
>
> Agora a criatividade eh que(m) manda, Vamos dar um exemplo mais complexo,
> com 3 tipos de animacoes: 1a. kinem igual ao exemplo2 :) 2a. ao contrario
> do exemplo2, o texto vem da direita pra esquerda. 3a. eh um efeito que
> faz parecer que alguem esta digitando o texto (ps: Lembre-se de aumentar os
> "true" caso sua makina nao seja um 486, hehe)
>
> ---> exemplo3.sh <--------------------------------------------------{-CUtHeRe
> #!/bin/bash
> echo -ne "\033[2J\033[0;0f"
> echo;echo;echo
> for A in 0 1 2 3 4 5 6 7 8 9 A B C D E F: ; do
> echo -ne "\033[6D "
> echo -ne "\033[1;36mN\033[0;36mear\033[0;1;36mZ\033[0m"; true ;
> done
> echo -ne "\033[60C"
> for A in 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N: ; do
> echo -ne "\033[10D "
> echo -ne "\033[10D"
> echo -ne "\033[1;32mE\033[0;32mdicao\033[0;1;32m06\033[0m"; true ;
> done
> true;true; echo -ne "\033[1m - "
> true;true; echo -ne "\033[1mA\033[0m"
> true;true; echo -ne "\033[36mN\033[0m"
> true;true; echo -ne "\033[34mS\033[0m"
> true;true; echo -ne "\033[2mI\033[0m "
> true;true; echo -ne "\033[1mR\033[0m"
> true;true; echo -ne "\033[1;31mu\033[0m"
> true;true; echo -ne "\033[31mL\033[0m"
> true;true; echo -ne "\033[1;31me\033[0m"
> true;true; echo -ne "\033[1mZ\033[0m"
> true;true; echo;echo;echo;echo
> ---> exemplo3.sh <--------------------------------------------------}-CUtHeRe
> ---------------
>
> []'s
> Hugo
>
> ------------------------------------------------------------------------
> Best friends, most artistic, class clown Find 'em here:
> http://click.egroups.com/1/5533/4/_/_/_/961488566/
> ------------------------------------------------------------------------
>
> Inscrição: address@hidden
>
> Sair da lista: address@hidden
>
> Banco Dados: http://www.egroups.com/group/shell-script
--
S l S t * Djames Suhanko
h l c p *
e r i *
h l c p * Linux User - 158760
S l S t *