我有命令printf "%s\n"
。我希望该命令可以用点(.000
)分隔零。
例如:
printf "%s\n" 300.77
300.77
我想
printf "%s\n" 1000000
1.000.000
你能帮我解决我的问题吗?
您必须使用%f
格式来指定将该值视为浮点数。
$ printf "%7.4f\n" 12.2
12.2000
$ printf "%7.4f\n" 12.23576 12.23574
12.2358
12.2357
$
如果目标是将本地千位分隔符放入输出中,那么您需要支持以下格式的'
修饰符:printf()
$ printf "%'d\n" 1223576 1223574
1,223,576
1,223,574
$
该行为取决于语言环境:
$ echo $LANG
en_US.UTF-8
$ (export LANG=de_DE.UTF-8; printf "%'d\n" 1223576 1223574)
1223576
1223574
$ (export LANG=dk_DK.UTF-8; printf "%'d\n" 1223576 1223574)
1,223,576
1,223,574
$ (export LANG=it_IT.UTF-8; printf "%'d\n" 1223576 1223574)
1223576
1223574
$ (export LANG=gr_GR.UTF-8; printf "%'d\n" 1223576 1223574)
1,223,576
1,223,574
$
在 Mac OS X 10.8.3(bash
版本:)上测试GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin12)
。