tput cup [RESOLVIDO]

1. tput cup [RESOLVIDO]

Matheus Soveral
matheusoveral

(usa Ubuntu)

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.


  


2. MELHOR RESPOSTA

/dev/movebo
letifer

(usa Slackware)

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





Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts