Linux Shell 06 数学运算

本文详细介绍了Shell脚本中六种不同的算术运算方式:let、expr、bc、(())、$[] 和 awk,每种方式都附带了示例说明其特点与使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.let

var = 1
let "var+=1"
let v2=var*2
echo $var,$v2  #2,4

a.只支持整数运算

b.基本支持所有运算符(包括++,——,**)

c.表达式中使用变量可以不加$

d.一般情况下表达式可不加双引号,但当表达式中含有bash中的关键字,则需加上

 

2.expr

var=1
var=`expr $var + 1`
echo  $var    #2

a.只支持整数运算

b.支持的操作符:|, &, <, <=, !=, >=, >, +, -, *, /, %

c.操作符 |, &, <, <=, >=, >, *需要使用\转义

d.expr后的表达式各个符号之间需用空格隔开

 

3.bc

var=3.14
vap=`echo "scale=2;$var*3" | bc`
echo $vap        #9.42

a.支持除位运算之外的所有运算符

b.使用scale设置运算精度

 

4.(())

var=1
((var+=1))
(("var*=2"))
van=$((var*3))
echo $var, $van    #4, 12

a.用法与let基本一致

b.把(())运算结果赋值时,前方需使用$

 

5.$[]

var=2
vas=$[$var+3]
vat=$[var*3]
echo $vas, $vat    #5, 6

a.只支持整数运算

b.支持与let命令一致的运算符

c.$[]内部变量前的$可省略

 

6.awk(比较复杂,功能强大)

var=1
var=`echo "$var  5" | awk '{printf("%g", $1+$2)}'`
echo $var        #6

 

转载于:https://www.cnblogs.com/techroad4ca/p/5444428.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值