printf宽度字段格式化问题

时间:2019-07-18 14:57:08

标签: bash

我正在尝试按给定的字段宽度将彩色文本右对齐。

基于right text align - bashUsing colors with printf 我不明白以下内容的输出:

blue=$(tput setaf 4)
normal=$(tput sgr0)

printf "%4s\n" "${blue}aaa${normal}"

blue=$(tput setaf 4)
normal=$(tput sgr0)

printf "%10s\n" "${blue}aaa${normal}"

blue=$(tput setaf 4)
normal=$(tput sgr0)

printf "%40s\n" "${blue}aaa${normal}"

blue=$(tput setaf 4)
normal=$(tput sgr0)

printf "%8s\n" "${blue}aaa${normal}"

这是:

aaa
aaa
                          aaa
aaa

为什么条目1,2和4左对齐?

谢谢!

GNU bash,版本4.4.23(1)-发行版(x86_64-redhat-linux-gnu)

0 个答案:

没有答案