您好,我正在尝试使用 seq 命令生成数字序列
seq 830456481 831456481
Run Code Online (Sandbox Code Playgroud)
结果如下
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
Run Code Online (Sandbox Code Playgroud)
不过,我想以不同的格式和指数符号得到我的输出。
Expected output
830456481
830456482
830456483
......
Run Code Online (Sandbox Code Playgroud)
我怎样才能实现它?
我的seq(MacOS 上的 v 8.32,带有brew)已经默认只打印数字(例如,830456481),所以我只是在这里猜测。man seq提到-f格式参数。你可以尝试
seq -f "%f" 830456481 830456485
830456481.000000
830456482.000000
830456483.000000
830456484.000000
830456485.000000
Run Code Online (Sandbox Code Playgroud)
传递“%g”作为格式可以得到你看到的科学记数法。
seq -f "%g" 830456481 830456485
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
8.30456e+08
Run Code Online (Sandbox Code Playgroud)
格式参数没有详细记录,您必须了解一些有关 Cprintf函数的知识才能正确使用。我可以指定“%.0f”来获得没有“.00000”的输出,就像普通的“%f”一样:
seq -f "%.0f" 830456481 830456485
830456481
830456482
830456483
830456484
830456485
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
234 次 |
| 最近记录: |