linux下shell运算

1. shell数学运算

shell中变量为数值的,也会被存储为字符串,但是我们可以当成数字进行处理

1.1 let用法

如果不能被整除,则直接取整数位,而不是四舍五入

#!/bin/bash

read -p "数字1:" num1
read -p "数字2:" num2

let result1=num1+num2
let result2=num1-num2
let result3=num1*num2
let result4=num1/num2
echo "num1加num2等于:$result1"
echo "num1减num2等于:$result2"
echo "num1乘num2等于:$result3"
echo "num1除num2等于:$result4"
let num1++
let num1+=2
let num2--
let num2-=2

echo "num1自增1:"  $num1
echo "num1自增2:"  $num1
echo "num2自减1:"  $num2
echo "num2自减2:"  $num2

输出结果

[root@ceph-node1 shell]# bash let.sh
数字1:8
数字2:4
num1加num2等于:12
num1减num2等于:4
num1乘num2等于:32
num1除num2等于:2
num1自增1: 11
num1自增2: 11
num2自减1: 1
num2自减2: 1

#### 不能整除
[root@ceph-node1 shell]# bash let.sh
数字1:5
数字2:2
num1加num2等于:7
num1减num2等于:3
num1乘num2等于:10
num1除num2等于:2

1.2 []和(())方法

[]

[root@ceph-node1 shell]# num2=6
[root@ceph-node1 shell]# result=$[ $num1 + $num2 ]
[root@ceph-node1 shell]# echo $result
10

(()),在这个里面如果调用变量,不需要添加$


[root@ceph-node1 shell]# num1=7
[root@ceph-node1 shell]# num2=8
[root@ceph-node1 shell]# result=$(( num1 + num2 ))
[root@ceph-node1 shell]# echo $result
15

猜你喜欢

转载自blog.csdn.net/hao_zhang_shrek/article/details/100109755