shell-之整数、小数运算

shell-之整数、小数运算

1 整数运算

shell实现整数运算的常用方式有4种,在shell中用的最多的是整数运算

1 expr

# expr 是一个shell命令 可以单独使用 
expr 1 + 2 #+左右必须有空格
> 3

num1=1
num2=2
expr $num1 + $num2
> 3 

# 如果需要打印或者给变量赋值我们需要用``将expr 表达式包起来
echo `expr 1 + 2`
num3=`expr 1 + 2`
echo $num3
> 3 

# 切记在expr命令中的*需要使用\*来对其进行转义

2 $(())

# $(())的形式也可以进行整数运算,但是$(())不能单独使用
# 要么打印,要么给变量赋值
echo $((1+2))
num=$((1+2))

num1=1
num2=2
#在$(())中运算可以省略掉获取变量值的`$`符号
num=$((num1+num2)) 

3 $[]

# $[]也可以进行整数运算,与$(())的用法一样,可以打印可以赋值
echo $[1+2]
num=$[1+2]

4 let

let 是shell脚本中最常用的方法

let num=1+2;echo num

let i++;echo $i
free -m|grep '^Mem:'|awk '{print $3}' # 打印第三列
# | 符号是将左边运行的结果当做参数传给下一个命令进行使用

小常识:bash -vx xxxx.sh,用调试的方式运行脚本

2 小数运算

在shell中小数的运算一般使用bc,该命令可以使用bc交互式运算,还可以使用管道符|进行运算。

  • bc
  • awk ‘BEGIN{print 1/2}’
echo "1/2" | bc
> 0 

echo "scale=2;6/4" | bc
> 1.50 #scale=2是保留小数点后面2位

# awk中默认是小数运算
awk 'BEGIN{print 1/2}'
> 0.5

# 将打印的 print 5.0/2 交给python解释器进行执行,这就是管道符的魅力
echo 'print 5.0/2' |python # 将打印的运算交给python执行器去执行
> 2.5
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值