如何使BSD printf命令忽略语言环境

时间:2015-10-19 19:10:07

标签: bash shell printf

我们的项目(https://github.com/prsolucoes/gonotin - run.sh)中有一个bash脚本,需要使用printf作为浮点的执行时间。

问题是osx上的printf与locale = pt_br,因为它使用“,”而不是“。”和printf命令不知道en_us数字,如“123.45”,只知道“123,45”。

我的问题是关于在printf上忽略locale或在printf命令上传递自定义语言环境。

任何人都可以帮助我吗?

感谢。

1 个答案:

答案 0 :(得分:2)

在命令中添加变量赋值将使用该变量作为临时环境变量运行它。所以在你的情况下,像

LC_NUMERIC=C printf "> Execution time: %.6f seconds\n\n" $dur

应该这样做。

More info about LC_* environment variables