Shell脚本学习二:Shell中的算术运算
admin
2023-08-03 09:47:42
0

Linux中有四种算术运算,分别是expr,let,$[],$(())。

下面分别介绍一下这四种算术运算的使用方法


一、expr的用法

[root@ssspure ~]# expr 1 + 2
3
[root@ssspure ~]# expr 1 - 2
-1
[root@ssspure ~]# expr 8 + 6
14
[root@ssspure ~]# expr 8 - 6
2
[root@ssspure ~]# expr 8 \* 6
48
[root@ssspure ~]# expr 8 / 6
1
[root@ssspure ~]# a=3
[root@ssspure ~]# b=4
[root@ssspure ~]# expr $a + $b
7

以上分别是expr做加减乘除运算的例子。

在使用expr做运算的时候,如果想要将运算结果赋值给另一个变量,就要像如下的操作那样。

[root@ssspure ~]# a=`expr 2 + 3`
[root@ssspure ~]# echo $a
5

下面说一下使用expr要注意的地方。

1、使用expr做运算的时候,算术和运算符之间要用空格分隔开,否则将不会进行运算

[root@ssspure ~]# expr 1+2
1+2

2、在进行乘法运算的时候,*前面要接\转义,因为*在正则表达式里面代表匹配多个的意思

[root@ssspure ~]# expr 2 * 3
expr: syntax error


二、let命令

[root@ssspure ~]# let a=2+3
[root@ssspure ~]# echo $a
5
[root@ssspure ~]# let a=2-3
[root@ssspure ~]# echo $a
-1
[root@ssspure ~]# let a=2*3
[root@ssspure ~]# echo $a
6
[root@ssspure ~]# let a=2/3
[root@ssspure ~]# echo $a
0
[root@ssspure ~]# b=4
[root@ssspure ~]# c=2
[root@ssspure ~]# let a=$b/$c
[root@ssspure ~]# echo $a
2

在使用let的时候,一般都需要将他们赋给一个变量来接受运算的结果。

let跟expr不一样,不需要再算数和运算符之间加空格。


三、$[]的使用

[root@ssspure ~]# a=$[2+3]
[root@ssspure ~]# echo $a
5
[root@ssspure ~]# a=$[2-3]
[root@ssspure ~]# echo $a
-1
[root@ssspure ~]# a=$[2*3]
[root@ssspure ~]# echo $a
6
[root@ssspure ~]# a=$[2/3]
[root@ssspure ~]# echo $a
0


四、$(())的使用

[root@ssspure ~]# a=$((1+3))
[root@ssspure ~]# echo $a
4
[root@ssspure ~]# a=$((1-3))
[root@ssspure ~]# echo $a
-2
[root@ssspure ~]# a=$((1*3))
[root@ssspure ~]# echo $a
3
[root@ssspure ~]# a=$((1/3))
[root@ssspure ~]# echo $a
0


相关内容

热门资讯

台风“巴威”带来风雨影响 多地... ↑ 7月11日,在位于上海市奉贤区的海湾城宿舍楼安置点,转移安置好的群众在房间内休息。新华社记者 王...
美国“鹰派”参议员格雷厄姆突然... 美国共和党“鹰派”参议员林赛·格雷厄姆办公室通讯主任于美东时间7月12日凌晨在社交平台发文称,格雷厄...
灵心巧手申请机器人专利,提高了... 国家知识产权局信息显示,灵心巧手(北京)科技股份有限公司申请一项名为“机器人”的专利,公开号CN12...
“入河排污口”成免费戏水乐园,... 近日,一段郑州市民拍摄的视频在网络引发关注。视频中,一块写有“入河排污口”的告示牌下,河水清澈,岸边...
邱议莹呛蒋万安“放台风假经济损... 海峡导报综合报道 台风“巴威”来袭,台北市政府10日停止上班上课,台股也休市一天。民进党民代邱议莹质...
伊朗打击中东多处美军设施回应袭... 当地时间12日,伊朗对美国在中东地区的目标发动一系列打击,旨在回应美军当天早些时候对伊朗发动的袭击。...
油烟机感应器失灵怎么办 1、出现这种情况有可能是整个面板漏电,加上油渍,导致开关感应不到,这个时候可以将油烟机进行清理,用抹...
方太油烟机触摸屏进水失灵怎么办 如果是焊盘进水导致漏电,从而引发的失灵。可以把盘子拆下清洗板子、焊上筷子,再清洗板子吹干。接着重新安...
台籍科研工作者:见证大陆科技飞... 中新社上海7月12日电 (记者 缪璐)“我见证了大陆科技从‘跟跑’到‘并跑’乃至‘领跑’的跨越,能够...
饭店油烟机不转怎么办 可以看一下电容器的表面状况,如果发现有烧焦的痕迹,那就表示电容器已经坏了。这时需要及时更换一个相同型...