[root@web1 ~]# printf '%s = %d\n' lines 24
lines = 24
[root@web1 ~]# printf '%-10.10s = %4.2f\n' 'Gigahertz' 1.92735
Gigahertz = 1.93
[root@web1 ~]# printf '%10.10s = %4.2f\n' 'Gigahertz' 1.92735
Gigahertz = 1.93
[root@web1 ~]# printf '%10.10s = %4.2f\n' 'Gigahertzaaa' 1.92735
Gigahertza = 1.93
[root@web1 ~]# printf '%10.10s = %4.2f\n' 'Gig' 1.92735
Gig = 1.93
[root@web1 ~]# printf '%-10.10s = %4.2f\n' 'Gig' 1.92735
Gig = 1.93
说明:
内建命令printf第一个参数是格式控制字符串,之后的参数都是根据格式规范(%)进行格式化。
%和格式类型(s\f\d等)之间的数字提供了额外的格式化细节。对于浮点类型(f),第一个数字(4.2中的4)是整个字段的宽度,第二个数字(2)是应该在小数点右侧打印出的位数。(结果按四舍五入处理)
对于字符串,第一个数字是字段的最大宽度,第二个数字是输出的字符数量。根据需要,字符串会被截断(长于max)或用空白填充(不足min)。如果指示符max和min相同,那么就可以确保字符串按照该长度输出。
指示符左侧的-负号表示左对齐(在字段宽度内),如果不使用负号,则字符串向右对齐。
评论