shell浮点运算

shell浮点运算

bash内置了对整数四则运算的支持,但不支持浮点运算。

有两种方法:

  1. 借助bc(需系统安装)
    yms@ubuntu:~/sunrise/shell$ echo $((5-4))
    1
    yms@ubuntu:~/sunrise/shell$ echo $((5.9-4.1))
    -bash: 5.9-4.1: syntax error: invalid arithmetic operator (error token is ".9-4.1")
    yms@ubuntu:~/sunrise/shell$ c=$(echo 5.9-4.1 | bc)
    yms@ubuntu:~/sunrise/shell$ echo $c
    1.8
    
  2. 使用awk printf
    yms@ubuntu:~/sunrise/shell$ awk 'BEGIN{printf "%.2f\n",(5.9-4.1)}'
    1.80
    

awk引用变量:’${val}’、‘“”${}“”’、 “’${}’”;推荐使用"’${}’",双引号,单引号,变量,单引号,双引号

#!/bin/bash
a=4.5
b=3.2
awk 'BEGIN{printf "%.2f\n",(4.5+3.2)}'
awk 'BEGIN{printf "%.2f\n",("'${a}'"+"'${b}'")}'

运行结果:

7.70
7.70
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值