Удлинить переменные

Я печатаю данные в форму в консоли и использую tput cup, чтобы распечатать их в той же позиции. Таким образом, я могу создать своего рода форму с небольшим описанием каждого значения. но если вы запустите

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

после

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

, вы получите

usr@node: /dir> 1299

, есть ли лучший способ решить эту проблему, тогда

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

tput cup 2 4; echo "          "

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

может быть добавление пробелов в конец каждой переменной, чтобы всегда было одинаковое количество символов или что-то в этом роде?

0
задан 10 August 2015 в 13:50

1 ответ

Замена echo с printf "%10.0" $var

, Что это делает, говорит printf печатать строку ширины 10 пробелов, рассматривать $var как плавающая точка, но потому что мы имеем.0 там, части после того, как десятичная точка не печатается. Попробуйте это:

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

1
ответ дан 10 August 2015 в 23:50
  • 1
    Спасибо, которое я искал в течение 2 часов решение и этого наконец, работало!!! Эта ошибка произошла для меня после sudo apt update && sudo apt upgrade на Ubuntu 16.04. – CascadiaJS 11 March 2018 в 07:27

Другие вопросы по тегам:

Похожие вопросы: