如何使 BSD seq 在使用大数时不输出 + 和 e?

如何使 BSD seq 在使用大数时不输出 + 和 e?

假设我运行seq 4000000 4100000,我希望 seq 打印数字,如man页面中引用的那样,“从第一个(默认1),到尽可能接近最后一个”。就像 GNU seq 所做的那样。

但我的命令的输出是

4e+06
4e+06
4e+06
4e+06
4e+06
4.00000e+06
4.00001e+06

我希望它是

4000000
4000001
4000002

ETC。

4099999
4100000

我认为也许-w可以修复它,但我不确定要给它什么输入,不给它输入会使输出相同。

答案1

那么你想在不使用科学记数法的情况下显示结果吗?尝试这个:

seq -f "%.0f" 4000000 4100000

所以我实际上将格式(使用-f)更改为小数点后 0 位的浮点格式(%.0f

在我的 Mac 上,这会导致:

4000000
4000001
4000002
4000003

ETC。

4099997
4099998
4099999
4100000

相关内容