加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell学习九--let

发布时间:2020-12-15 16:24:48 所属栏目:安全 来源:网络整理
导读:let命令是bash中用于计算的工具,提供常用运算符还提供了方幂**运算符。 在变量的房屋计算中不需要加上$来表示变量,如果表达式的值是非0,那么返回的状态值是0;否则,返回的状态值是1。 格式:let arg1 [arg2 ......] 说明: 与expr命令相比,let命令更简洁
let命令是bash中用于计算的工具,提供常用运算符还提供了方幂**运算符。 在变量的房屋计算中不需要加上$来表示变量,如果表达式的值是非0,那么返回的状态值是0;否则,返回的状态值是1。 格式:let arg1 [arg2 ......] 说明: 与expr命令相比,let命令更简洁直观 [ ]表示可以有多个参数,arg n (n=1,2…) 运算符与操作数据之间不必用空格分开,但表达式与表达式之间必须要用空格分开 当运算符中有<、>、&、|等符号时,同样需要用引号(单引号、双引号)或者斜杠来修饰运算符 let赋值表达式功能等同于((赋值表达式)) 实例1: [root@node01 day4]# i=2 [root@node01 day4]# let i=i+8 [root@node01 day4]# echo $i 10 [root@node01 day4]# i=2 [root@node01 day4]# i=i+8 去掉let定义 [root@node01 day4]# echo $i i+8 [root@node01 day4]# let i=i+8 等同于((i=i+8))后者效率更高 实例2: [root@node01 day4]# let s=(2+3)*4 [root@node01 day4]# echo $s 20 例子3: [root@node01 day4]# vi test1.sh #!/bin/bash let a=3+4 b=9*3 echo $a $b [root@node01 day4]# sh test1.sh 7 27 例子4:[root@node01 day4]# vi test2.sh #!/bin/bash t=122 t=$t+1 echo $t [root@node01 day4]# sh test2.sh 122+1 例子5: [root@node01 day4]# vi test3.sh #!/bin/bash no1=4 no2=3 let no=no1+no2 echo $no [root@node01 day4]# sh test3.sh 7 这其中的let可以用(())代替 1:在shell 中$() 与 ``等效。执行中间包含的命令语句,返回执行结果。 2:从效率来说let==(()) > expr > bc。let和(())运行是内建命令,使用相同的算法。 3:let 和 expr 的运算是整数运算,不包括浮点预算。 4:expr和bc是外部程序,expr的体积几乎等于bc的1/3,执行一次装入内存所消耗的时间就不一样。 5:从运算能力来说,bc排第一位 在SHELL中,变量是没有类型的,如果变量的值都是数字,那么其可以视为整数,如果有字母,那么就当做字符串。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读