Pular para o conteúdo

tput cup [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. tput cup [RESOLVIDO]

Enviado em 13/08/2008 - 13:33h

Estou usando o comando tput cup em um script que monta uma tela, o meu problema está no sequinte caso:
Tenho um arquivo com uma lista de usuarios e quero apresenta-los na tela em uma posição X Y. Mas não está fluindo...

Ex.:
tput cup 5 15
cat listauser.txt

A primeira linha fica na posicao, mas as sequintes não...
Mesmo colocando em um while ou for não funciona!!!
Alguém tem uma idéia de como fazer essa loucura funcionar.

Responder tópico

2. Re: tput cup [RESOLVIDO]

Melhor resposta

Enviado em 13/12/2009 - 10:37h

O problema é que você define a posição uma única vez e logo em seguida lê o arquivo completo.
Minha solução é ler uma linha do arquivo por vez; aí você define a posição, exibe a linha e aumenta o valor de x para que a próxima linha não sobrescreva esta:

x=5; y=15

cat listauser.txt | while read LINHA ; do
tput cup $x $y
echo $LINHA
let x++
done


Ah, você ganha um processo (job), se substituir o cat por um direcionador (num arquivinho de 7 linhas ganhei 1ms - se você quiser testar rode "time { comando ; }", sem as aspas ;^) :

x=5; y=15
while read LINHA; do
tput cup $x $y
echo "$LINHA"
let x++
done < listauser.txt

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder