使用 expr 的数学

exprEvaluate expressions 计算表达式并将结果写入标准输出

基本的算术

expr 2 + 3
5

乘以时,你需要转义*标志

expr 2 \* 3
6

你也可以使用变量

a=2
expr $a + 3
5

请记住,它只支持整数,所以这样表达

expr 3.0 / 2

会抛出错误 expr: not a decimal number: '3.0'

它支持正则表达式以匹配模式

expr 'Hello World' : 'Hell\(.*\)rld'
o Wo

或者在搜索字符串中找到第一个字符的索引

这会在 Mac OS X 上抛出 expr: syntax error ,因为它使用没有 index 命令的 BSD expr ,而 Linux 上的 expr 一般是 GNU expr

expr index hello l
3

expr index 'hello' 'lo'
3