shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: Função para desenhar caixas


From: Julio C. Neves
Subject: Re: [shell-script] Re: Função para desenhar caixas
Date: Thu, 31 Jul 2014 22:22:26 -0300

Vc tb poderia evitar o for, da seguinte maneira:

Para fazer uma linha do tamanho da tela, primeiro a crio com espaços em branco:
$ linha=$(printf "%$(tput cols)s\n" ' ')
Para substituir os espaços por traços eu faço:
$ traco=$(printf "\e(0\x71\e(B")
$ echo ${linha// /$traco}

Abcs,
Julio
@juliobash
Próximos cursos de Shell
Cidade         Local Período
Rio de Janeiro EDX 11 a 15/08
Dou treinamento de Shell em qualquer cidade.
Para mais detalhes, me mande um e-mail.



2014-07-31 16:14 GMT-03:00 Alfredo Casanova address@hidden [shell-script] <address@hidden>:
 

acabei de ver que tinha uns tputs desnecessários, corrigindo:

drawBox(){
string="$*";
tamanho=${#string}
tput setf 3; printf "\e(0\x6c\e(B"; for i in $(seq $tamanho); do printf "\e(0\x71\e(B"; done; printf "\e(0\x6b\e(B\n";
printf "\e(0\x78\e(B"; tput setf 4; tput bold; echo -n $string; tput sgr0; tput setf 3; printf "\e(0\x78\e(B\n";
tput setf 3; printf "\e(0\x6d\e(B"; for i in $(seq $tamanho); do printf "\e(0\x71\e(B"; done; printf "\e(0\x6a\e(B\n"; tput sgr0;
}


On Thu, Jul 31, 2014 at 4:12 PM, Alfredo Casanova <address@hidden> wrote:
Só compartilhando uma funçãozinha que fiz aqui pra desenhar caixas de mensagem (só funciona para mensagens com uma linha, se alguém quiser alterar, à vontade)

drawBox(){
string="$*";
tamanho=${#string}
tput setf 3; printf "\e(0\x6c\e(B"; for i in $(seq $tamanho); do printf "\e(0\x71\e(B"; done; printf "\e(0\x6b\e(B\n"; tput sgr0;
tput setf 3; printf "\e(0\x78\e(B"; tput setf 4; tput bold; echo -n $string; tput sgr0; tput setf 3; printf "\e(0\x78\e(B\n"; tput sgr0;
tput setf 3; printf "\e(0\x6d\e(B"; for i in $(seq $tamanho); do printf "\e(0\x71\e(B"; done; printf "\e(0\x6a\e(B\n"; tput sgr0;

}

​uso:

$ drawBox qualquer frase que caiba no terminal
┌────────────────────────────────────┐
│qualquer frase que caiba no terminal│
└────────────────────────────────────┘




--
[]'s
Alfredo Casanova
Linux User #228230
msn: address@hidden
tel: +55 61 9655 9619




--
[]'s
Alfredo Casanova
Linux User #228230
msn: address@hidden
tel: +55 61 9655 9619



reply via email to

[Prev in Thread] Current Thread [Next in Thread]