Linux bash数值计算小结

 
Category: Linux-Shell

双小括号

测试环境:

Ubuntu jammy

只支持整数

echo $((9>8 && 78<9))
0
❯ echo $((9>8 && 78>9))
1
❯ echo $((9>8 || 78>9))
1
❯ echo $((123**9))
6443858614676334363
num=5
❯ ((num*=3))echo $num
15
❯ a=$((2+3**92%2))echo $a
1
a=5
❯ echo $((++a))
6
❯ echo $a
6
❯ echo $((a++))
6
❯ echo $a
7
echo $(($1))

$[]数值计算

res=$[1-22]
❯ echo $res
-21

let命令对变量的数值计算

bc计算器


计算1加到100的方法

  1. seq -s "+" 100| sed "s/\+$/\n/g" |bc
    5050
    
  2. echo {1..100} |tr " " "+"|bc
    5050
    
  3. seq -s " + " 100 | sed "s/..$/\n/g" | xargs expr
    5050