终端创建右对齐输出

终端创建右对齐输出

我正在尝试创建一个在最后输出一些内容的脚本。现在我该如何创建一个居中或右对齐的输出?

答案1

为了右对齐,您可以简单地打印字段宽度等于终端列宽的文本:

printf '%*s\n' $COLUMNS 'some text'

对于居中对齐,您需要做一些计算来计算要打印的文本的长度 - 例如Ubuntu 16.04:终端中的中心问候命令

答案2

如果你想中心通常你可以定义一个函数(例如在.bashrc):

center() { printf '%*s\n' $[COLUMNS/2 + ${#1}/2] $1 ;}

进而

$ center 'some text' 

相关内容