Prolongar Variáveis

0

Imprimo dados em um formulário em um console e uso tput cup a impressão na mesma posição. Desta forma, posso criar uma espécie de formulário com uma pequena descrição de cada valor. mas se você correr

var=12
tput cup 2 4; echo "$var"

depois

var=9999
tput cup 2 4; echo "$var"

você recebe

usr@node: /dir> 1299

existe um beter wat para resolver este problema então

var=9999
tput cup 2 4; echo "$var"

tput cup 2 4; echo "          "

var=12
tput cup 2 4; echo "$var"

talvez adicionando espaços ao final de cada variante, para que seja sempre a mesma quantidade de caracteres ou algo assim?

    
por Roffel 10.08.2015 / 11:50

1 resposta

1

Substitua echo por printf "%10.0" $var

O que isto faz é que o printf imprima uma linha com largura de 10 espaços, trate o $var como ponto flutuante, mas porque nós temos 0, as partes após o ponto decimal não são impressas. Tente isto:

var=9999; tput cup 2 4; printf "%10.0f" $var; sleep 2; var=12; tput cup 2 4; printf "%10.0f" $var;

    
por Sergiy Kolodyazhnyy 10.08.2015 / 13:13