延长变量

延长变量

我将数据打印到控制台中的表单中,然后使用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"

也许在每个变量的末尾添加空格,以便它总是具有相同数量的字符或类似的?

答案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;

相关内容