关于整数加单行,存在几种建议的 shell 脚本解决方案;
然而,仔细观察所选择的每个解决方案,都存在固有的局限性:
awk
那些会以任意精度和整数大小窒息(毕竟它的行为类似于 C)bc
宁愿对任意长的输入不满意:(sed 's/$/+\\/g';echo 0)|bc
了解可能存在跨平台的可移植性问题(参见 [1] [2]),这是不希望的,
是否有通用解决方案在 上都是赢家?实用性 和 简短 ?
提示:SunOS 和 MacOSX 是可移植性成为问题的示例。
菲。可以
dc
命令允许处理任意大的 2^n、整数或其他输入?[1]
awk
:https://stackoverflow.com/a/450821/1574494或 https://stackoverflow.com/a/25245025/1574494或 Printing long integers in awk[2]
bc
:Bash command to sum a column of numbers
最佳答案
dc(1)
的最优解对读取的输入求和:
$ jot 1000000 | sed '2,$s/$/+/;$s/$/p/' | dc
500000500000
关于shell - 最优雅的 unix shell 单行来求和任意精度的数字列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44771056/