Linux 脚本里计算加减乘除及expr命令

Linux 脚本里计算加减乘除及expr命令

ID:37711633

大小:16.04 KB

页数:5页

时间:2019-05-29

Linux 脚本里计算加减乘除及expr命令_第1页
Linux 脚本里计算加减乘除及expr命令_第2页
Linux 脚本里计算加减乘除及expr命令_第3页
Linux 脚本里计算加减乘除及expr命令_第4页
Linux 脚本里计算加减乘除及expr命令_第5页
资源描述:

《Linux 脚本里计算加减乘除及expr命令》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Linux脚本里计算加减乘除及expr命令Linux下面计算加减乘除,其实也就是一个小程序,名字是”expr”。这个程序很好用,不过有一点需要注意,就是不要忘了使用空格和转义,比如计算两个数的乘法,应该这样写:expr1024*1024其实还是很简单的,这儿有份不错的参考文档,这个程序可不光能计算加减乘除哦,很多表达式,他都可以计算出结果。expr命令:用途求表达式变量的值。语法exprExpression描述expr命令读入Expression参数,计算它的值,然后将结果写入到标准输出。您必须对Expression参数应用下列规则:用

2、空格隔开每个项。用(反斜杠)放在shell特定的字符前面。对包含空格和其他特殊字符的字符串要用引号括起来。整数前面可以放一个一元连字符。在内部,整数被当作32位,双互补数。注意:expr命令返回一个0来指示一个零值,而不是空字符串。下列项描述了Expression参数的运算符和关键字。需要转义的字符由一个(反斜杠)放在前面。这些项按照优先权递增的顺序列出,具有相等的优先权的运算符分组在{}(大括号)中:Expression1

3、Expression2返回Expression1如果它不是空值或者0值的话,否则返回Expression2。

4、Expression1&Expression2返回Expression1如果两个表达式都不是空值或者0值,否则返回一个0值。Expression1{=,>,>=,<,<=,!=}Expression2如果两个表达式都是整数,返回整数比较的结果;否则它返回的是字符串比较的结果。Expression1{+,-}Expression2整数值变量的加或者减。Expression1{*,/,%}Expression2整数值变量的乘、除或者提供除法的余数。Expression1:Expression2将Expression1的运算得到的字

5、符串与Expression2的运算结果的正则表达式模式进行比较。正则表达式语法与ed命令相同,除了所有的模式固定到字符串的开始之外(也就是说,只有以字符串的第一个字符开始的序列才被正则表达式匹配)。因此^(插入符号)在这种情况下就不是特殊字符。一般地,匹配运算符返回匹配的字符个数(失败的时候返回0)。如果模式包含了一个子表达式,也就是:(Expression),那么会返回包含了实际匹配的字符的字符串。整理序列可以定义在字符范围内使用的等价类。注意:下列字符串变量会超过标准,其行为可能在不同的操作系统中会有不同。这些字符串变量是“不”可

6、移植的。matchString1String2与Expression1:Expression2相同。lengthString1返回String1的长度。indexString1String2返回String1中包含String2中任意字符的第一个位置。substrString1StartPositionLength                         返回一个以StartPosition的字符开始的在String1中的字符串,并且是Length长度的字符串。退出状态此命令返回下列出口值:0Expression参数运算值既不为空

7、也不为0。1Expression参数的计算值或者为空或者为0。2Expression参数是不合法的。>2发生错误。注意:在shell处理完参数后,expr命令除了利用数值外不能区分运算符和操作数。因此,如果$a的值是j的话,命令:expr$a=j就像:exprj=j在shell将所有的参数都传给expr命令之后。下列情况也为真:exprX$a=Xj示例要修改一个shell变量,请输入:COUNT=`expr$COUNT+1`这会加1到shell变量$COUNT上。expr命令以graveaccent包装,这会导致shell将expr命令的

8、标准输出替换到COUNT=命令的标准输出。$COUNT变量使用前必须初始化。要想得到$STRshell变量的长度,请输入:LENGTH=`expr$STR:".*"`这会将LENGTH变量设置成由:(冒号)运算符给出的值。.*(点,星号)模式会对任何字符串从头到尾去匹配,因此冒号运算符给出$STR变量的长度作为匹配字符的数目。注意,.*必须在引号内,来防止shell将*(星号)处理成模式匹配字符。引号不是模式中的一部分。如果$STR变量设置成空字符串或者包含了任何空格(空白或者制表键)的话,那么该命令会显示错误信息expr:syntaxe

9、rror。这是因为shell通常不会将空字符串传递给命令。在这种情况下,expr命令只能看见::.*shell还会除去单个的引号。不起作用的原因是因为冒号运算符要求有两个值。这个问题可以通过将

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。