`

高级Bash编程指南__第二部分__基本__8.0 操作符与相关主题

阅读更多
8.0 操作符与相关主题
8.1 操作符
赋值
变量赋值

注意:
不要混淆"=" 赋值操作符与=测试操作符
if [ "x$string1" = "x$string2" ] 
#这样做是一种更安全的做法,可以防止两个变量中的一个为空所产生的错误(字符"x"作为前缀在等式两边是可以相互抵消的)
then
command
fi

算术操作符:
+ - * / %  **(幂运算)
+=  -=  *=  /=  %=

#幂运算
[root@cy-cloud02 exercise]# let "z=5**3"
[root@cy-cloud02 exercise]# echo $z
125

#取模运算
[root@cy-cloud02 exercise]# expr 5 % 3
2
[root@cy-cloud02 exercise]#

[root@cy-cloud02 exercise]# : $((n = $n +1 ))    #":"必须要加,否则Bash会将"$((n = $n +1 ))"解释为一个命令
[root@cy-cloud02 exercise]# echo $n
1
[root@cy-cloud02 exercise]#

[root@cy-cloud02 exercise]# : $[ m++ ]   #这种写法也可以
[root@cy-cloud02 exercise]# echo $m
1

算数操作符经常会出现在expr或let表达式中

注意:
在Bash中整形变量事实上是一个有符号的long(32bit)整形值,所表示的范围是-2147483648到2147483647,超过这个范围,将会产生溢出。



位移操作符:

<<  : 左移一位(每次左移都相当于乘以2)
<<= :   左移赋值  let "var <<= 2" (变量var左移2位,即乘以4)
>> : 右移
>>= :   右移赋值
& :  按位与
&= :
| :按位或
|= :
~ :按位反
! :按位非
^ : 按位异或
^= :

[root@cy-cloud02 exercise]# let "b= 2+2"
[root@cy-cloud02 exercise]# echo $b
4
[root@cy-cloud02 exercise]# let "c= $b<<2"
[root@cy-cloud02 exercise]# echo $c
16
[root


数字常量:
SHELL脚本默认情况下都是把数字作为10进制来处理的,除非这个数字采用了特殊的标记或前缀,如果数字以0开头的话那么就是8进制数,如果是以0x开头的话那么就是16进制,如果中间嵌入了#的话,那么就被认为是BASE#NUMBER的标记法(有范围和符号限制)

10进制:
[root@cy-cloud02 exercise]# let "dec = 32"
[root@cy-cloud02 exercise]# echo $dec
32


8进制:
[root@cy-cloud02 exercise]# let "oct = 032"
[root@cy-cloud02 exercise]# echo $oct
26

2进制:
[root@cy-cloud02 exercise]# let "bin = 2#0101010101010"
[root@cy-cloud02 exercise]# echo $bin
2730

32进制:
[root@cy-cloud02 exercise]# let "b32 = 32#77"
[root@cy-cloud02 exercise]# echo $b32
231

64进制:
[root@cy-cloud02 exercise]# let "b64 = 64#@_"
[root@cy-cloud02 exercise]# echo $b64
4031


BASE的范围在2到64之间;










@dianxinguangchang.43F.zhongshanerlu.yuexiuqu.guangzhoushi.guangdongsheng

2016-10-19 10:51
分享到:
评论

相关推荐

    高级bash编程指南_PDF版.zip

    **高级Bash编程指南**是针对Linux或Unix系统中Bash shell脚本编写的一份深入教程,这份PDF版教程旨在帮助用户充分利用Bash的强大功能,提高自动化任务处理和系统管理的效率。Bash(Bourne-Again SHell)是大多数...

    高级bash脚本编程指南_html

    高级bash脚本编程指南

    高级Bash脚本编程指南ABS_Guide PDF 中文版

    《高级 Bash 脚本编程指南》是一本广受好评的 Bash 脚本编程著作,原作者是 Mendel Cooper ,其原始版本地址是:http://tldp.org/LDP/abs/html/index.html ,豆瓣链接在此,评分高达 9.0分,其江湖地位斐然,可以...

    高级Bash脚本编程指南

    高级Bash脚本编程指南

    高级Bash脚本编程指南 源码

    《高级Bash脚本编程指南》是一本深入探讨Bash编程的资源,提供了丰富的示例和详尽的解释。以下是根据提供的压缩包文件名所涉及的一些核心知识点: 1. **数组操作**: - `array-append.bash`:Bash从4.0版本开始...

    高级Bash 脚本编程指南.pdf

    《高级Bash脚本编程指南》是一本专为深度学习Unix/Linux环境下的Bash脚本编程而设计的书籍。Bash,全称Bourne-Again Shell,是Unix和类Unix系统中最常用的shell之一,几乎在所有Linux发行版以及大部分的Unix变体中都...

    高级bash脚本编程指南 6.0 最新版

    高级 bash 脚本 编程指南 6.0 最新版 2009 高级 bash 脚本 编程指南 6.0 最新版 2009 高级 bash 脚本 编程指南 6.0 最新版 2009

    高级Bash脚本编程指南[1].3.9.1 (杨春敏 黄毅 译)【无重复页】.pdf

    本书《高级Bash脚本编程指南》是一本深入探讨UNIX®/Linux环境下Bash Shell脚本编程的权威指南,由Mendel Cooper所著。全书内容覆盖广泛,旨在为读者提供从基础到高级的Shell编程技能,并假定读者没有任何脚本编程或...

    高级Bash脚本编程指南_手册CHM版

    所幸的是,我看到了这本被人称为abs的书,这本书介绍了bash大量的细节和广阔的范围,我遇到的绝大部分的技术问题--无论是我忘记的或是以前没有发现的--都可以在这本书里找到答案。这本使用大量的例子详细地介绍了...

    高级Bash脚本编程指南(Advanced Bash-Scripting Guide 中文)

    高级Bash脚本编程指南 原作者 Mendel Cooper 原书名 Advanced Bash-Scripting Guide 译者 黄毅 杨春敏 译者发布的是html和pdf版。pdf版只有3.7版,我花了点功夫基于最新的3.9做成了chm版。

    高级Bash脚本编程指南Doc转pdf高清版

    "高级Bash脚本编程指南"是一本深入讲解Bash脚本编程的权威资料,其Doc转pdf高清版为学习者提供了方便的阅读体验。这本书涵盖了从基础到高级的多个层次,旨在帮助读者提升在Linux环境中使用Bash编写高效、可靠脚本的...

    高级Bash脚本编程指南.CHM

    高级Bash脚本编程指南,chm格式。

    高级Bash脚本编程指南--中文版(advance_bash_scriipt_progaming_guide).pd苹果脚本跟我学.pdff

    "高级Bash脚本编程指南--中文版(advance_bash_scriipt_progaming_guide).pdf" 和 "苹果脚本跟我学.pdf" 这两本书籍,提供了丰富的资源来帮助初学者和有经验的开发者提升Bash脚本编写技能。 Bash脚本是通过Shell...

Global site tag (gtag.js) - Google Analytics