在Unix中为数字字符串添加逗号

Mar*_*jer 3 unix linux shell

在Unix中为数字添加逗号,需要更改12345671,234,567

是否有可能在sedawk?如果是这样,请提供一些样品.

小智 6

$ LC_NUMERIC=en_US

$ printf "%'.f" 1234567
1,234,567
Run Code Online (Sandbox Code Playgroud)

jim mcnamara提供:Locale确定千位分隔符会发生什么.

$ export LC_NUMERIC="en_US.UTF-8"
$ printf "%'f\n" 1234567.777
1,234,567.777000

$ export LC_NUMERIC=C
$ printf "%'f\n" 1234567.777
1234567.777000
Run Code Online (Sandbox Code Playgroud)

最后一个没有逗号.你的结果没有逗号.你明白为什么现在吗?区域设置LC_NUMERIC设置是您的答案.C语言环境没有千位分隔符.我猜你的语言环境也没有.