shell计算_数字加减

蛋蛋 2022年09月09日 37 0

let

变量前不加上"$",像C语言中两个init型变量之间相加

#!/bin/bash
NUM=10
let NUM++
echo ${NUM}
NUM1=20
let NUM2=NUM+NUM1
echo ${NUM2}
11
31

[]

[]之间带不带空格都可以

#!/bin/bash
NUM1=10
NUM2=20
echo $[ $NUM1 + $NUM2 ]
echo $[ NUM1 + NUM2 ]
30
30

(())

与[]操作一样,只是在最外边要加上"$"

#!/bin/bash
NUM1=10

echo $(($NUM1+10))
echo $(($NUM1+20))
20
30

expr

使用expr两个操作数与"+"之间要有空格,不然会得到其他结果

#!/bin/bash
NUM1=10
NUM=`expr 3 + 4`
echo $NUM
NUM2=$(expr $NUM1 + 20)
echo $NUM2
7
30
NUM2=$(expr $NUM1+20)
echo $NUM2
10+20

bc

注:该命令有的机器没有安装,建议使用awk
可以计算浮点数,通常与echo一起使用在管道"|"连接bc

#!/bin/bash
NUM=10
echo "3.01 + 4" | bc
echo "obase=2;$NUM" | bc

NUM1=1010
echo "obase=10;ibase=10;$NUM1" | bc

NUM2=20
result=`echo "obase=9;ibase=2;$NUM2" | bc`
echo $NUM2
echo "sqrt(100)" | bc
7.01
1010

1010

20
10

awk

echo 23 20 | awk '{print $1-$2}'
3
Last Updated: 2022/09/09 23:49:09
抓包工具_Wireshark常用过滤规则 linux基础_Crontab