原文地址:https://zhidao.baidu.com/question/460883578519680605.html
使用命令:printf "%-20s%-15s%10.2f
" "Shan" "zhang" 35
输出:Shan zhang 35.00
分析:
%-20s表示一个左对齐、宽度为20个字符字符串格式,不足20个字符,右侧补充相应数量的空格符。
%-15s表示一个左对齐、宽度为15个字符字符串格式。
%10.2f表示右对齐、10个字符长度的浮点数,其中一个是小数点,小数点后面保留两位。
案例二:
使用命令:printf "|%10s|
" hello
输出:| hello|
分析:%10s表示右对齐,宽度为10的字符串,如不足是个字符串,左侧补充相应数量的空格数.
案例三:
使用命令:printf "|%-10s|
" hello
输出:|hello |
分析:和案例二比较一下
案例四:
使用命令:printf "%x %#x
" 15 15
输出:f 0xf
分析:如果#标志和%x,%X搭配使用,在输出十六进制数字时,前面回家0x或者0X前缀.
使用标志符的作用主要是为了动态的指定宽度和精度.