Chinaunix首页 | 论坛 | 博客
  • 博客访问: 473084
  • 博文数量: 58
  • 博客积分: 6047
  • 博客等级: 准将
  • 技术积分: 838
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-06 21:05
文章分类

全部博文(58)

文章存档

2009年(24)

2008年(34)

我的朋友

分类:

2008-08-05 14:52:00

bash本身不具备浮点运算功能,最近在看,里面介绍了一种使用bc来实现bash浮点运算的方法。bc是一个高精度的计算器,gentoo用户可以使用emerge bc来安装。在脚本中使用bc的基本格式如下:
variable=$(echo "OPTIONS; OPERATIONS" | bc)
下面是几个例子:
  1. #! /bin/bash

  2. a=1.2
  3. b=1.3
  4. c=$(echo "$a+$b"|bc) #加法运算
  5. d=$(echo "$a*$b"|bc) #乘积运算
  6. e=$(echo "scale=5;$a/$b"|bc) #除法运算,scale=5为指定小数位数为5
  7. echo "$c $d $e"

  8. echo "s(1)"|bc -l #计算sin(1),-l选项为调用数学库

  9. #计算0.5+0.5^2+...+0.5^5
  10. s=0
  11. for i in 1 2 3 4 5
  12. do
  13. s=$(echo "$s+0.5^$i"|bc -l)
  14. done
  15. echo $s
有关bc的使用及语法请参见man bc。
阅读(2252) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~