shell-----变量的数值运算

本文详细介绍了Shell中进行算术运算的各种方法,包括使用expr命令、$[]和$(())表达式、let命令以及bc工具进行小数运算。通过实例演示了整数和小数的加减乘除操作,为初学者提供了全面的Shell算术运算指南。

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

一、expr命令

[root@localhost mm]# a=10
[root@localhost mm]# expr $a+10
10+10
[root@localhost mm]# expr $a + 10
20
[root@localhost mm]# expr $a - 10
0
[root@localhost mm]# expr $a * 10
expr: syntax error
[root@localhost mm]# expr $a \* 10   (*必须加转译字符)
100
[root@localhost mm]# expr $a / 10
1
[root@localhost mm]# expr $a % 10
0

二、$[] 和 $(()) 表达式

[root@localhost mm]# echo $[a+10]
20
[root@localhost mm]# echo $[a-10]
0
[root@localhost mm]# echo $[a*10]
100
[root@localhost mm]# echo $[a/10]
1
[root@localhost mm]# echo $[a%10]
0
[root@localhost mm]# echo $((a+10))
20
[root@localhost mm]# echo $((a*10))
100

三、let命令(let命令在执行后会保存新的值)

[root@localhost mm]# let a+=5
[root@localhost mm]# echo $a
15
[root@localhost mm]# echo $a-=10
15-=10
[root@localhost mm]# echo $a
5
[root@localhost mm]# let a*=10
[root@localhost mm]# echo $a
50
[root@localhost mm]# let a/=10
[root@localhost mm]# echo $a
5
[root@localhost mm]# let a%=10
[root@localhost mm]# echo $a
5

四、小数运算工具bc


[root@localhost mm]# echo "scale=4;1.23*4.5" | bc
5.535
[root@localhost mm]# echo "scale=4;1.234.5" | bc
(standard_in) 1: syntax error
[root@localhost mm]# echo "scale=4;1.23+4.5" | bc
5.73

五、计算两个数的加减乘除

[root@localhost mm]# cat westos1.sh 
#!/bin/bash

read -t 5 -p "请输入两个整数:" a b

echo "a+b=$[a+b]"
echo "a-b=$[a-b]"
echo "a*b=$[a*b]"
echo "a/b=$[a/b]"
echo "a**b=$[a**b]"
echo "a%b=$[a%b]"
[root@localhost mm]# sh westos1.sh 
请输入两个整数:2 5
a+b=7
a-b=-3
a*b=10
a/b=0
a**b=32
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值