我的 bash 脚本中有以下命令:
printf '\n"runtime": %s' "$(bc -l <<<"($a - $b)")"
我需要在大约 100 台服务器上运行这个脚本,我发现其中一些没有安装 bc
。我不是管理员,无法在缺少的服务器上安装 bc
。
在那种情况下,我可以使用什么替代方法来执行相同的计算?请让我知道新命令应该是什么样子
最佳答案
如果您需要一个适用于浮点运算的解决方案,您总是可以回退到 Awk。
awk -v a="$a" -v b="$b" 'BEGIN { printf "\n\"runtime\": %s", a-b }' </dev/null
将代码放在 BEGIN
block 中并重定向来自 /dev/null
的输入是当您想使用 Awk 但没有文件时的常见解决方法要循环的行数,这是它真正设计的目的。
关于linux - 如何替换 bash 脚本中的 'bc' 工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48534742/