linux - 在 Unix 中向数字字符串添加逗号

标签 linux shell unix

在Unix中给数字加逗号,需要把1234567改成1,234,567

sedawk 中可以吗?如果是这样,请提供一些示例。

最佳答案

$ LC_NUMERIC=en_US

$ printf "%'.f" 1234567
1,234,567

jim mcnamara 提供:语言环境决定千位分隔符会发生什么。

$ 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

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

关于linux - 在 Unix 中向数字字符串添加逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14668094/

相关文章:

c - Unix 中的内存映射 I/O

linux - shell 脚本的问题 while!

bash - 源 bash 脚本到另一个

linux - 在 Linux 中监控进程的启动

php - 在 PHP/HTML 中添加 if 语句

linux - 如何在 Linux 中将天数转换为秒数

python - 将 subprocess.Popen 的输出传递给 if elif 语句

C++:free():下一个大小无效(快速)

c - GCC 链接器无法找到库

linux - Shell 脚本,删除文件而不将整个名称作为参数