(( )):
用于执行简单的整数运算,只需将待定的算术表达式用 "$((" 和 “))” 括起来(很常用且效率高)
shell的算术运算符号都置于"$((" 和 “))” 的语法中,这一语法如同双引号功能,除了内嵌双引号无需转义
let:
let 赋值表达式的功能等同于:(( 赋值表达式 ))
expr:
expr命令一般用于整数值,但也可用于字符串,用来求表达式变量的值,同时expr也是一个手工命令行的计算器
用法一:
expr 算数表达式(使用乘号时,必须用反斜线转义。并且运算符要用空格隔开)
使用乘号时,必须用反斜线转意用法二:
expr在循环中可用于增量计算,首先,循环初始化为0,然后循环制加1,梵音好的用法为命令替代,最近本的一种是从(expr) 命令接收输出并将之 放入循环变量
用法三:
$[$a+$b]
用法四:
'STRING : REGEX' 执行模式匹配。两端参数会转换为字符格式,且第二个参数被视为正则表达式,它默认会隐含前缀"^"。随后将第一个参数和正则模式做匹配。
用法五:
expr length string 计算字符串长度
bc:
bc是linux下的计算器,他可以用在命令行下面
i = `echo $i+1 | bc` 因为bc支持科学计算,所以这种方法功能十分强大
typeset:
$[ ]
计算字符串长度的三种方式,以及三种方法的耗时:
结论:我们可以看到速度相差几十倍,一般情况调用外部命令处理与内置功能操作性能相差较大,在shell编程中,我们应该尽量使用内置操作或函数完成
网友评论