expr命令的英文全称是“expression”,即是表达式的意思,作用是一个命令行的计数器,常用于在UNIX/LINUX系统中求表达式变量的值,一般用于整数值,也可用于字符串。
语法格式
expr [表达式]
常用参数:
空格 | 隔开每个项 |
\(反斜杠) | 放在 shell 特定的字符前面 |
“”(引号) | 对包含空格和其他特殊字符的字符串要用引号括起来 |
参考实例
计算字串长度:
[root@coonote ~]# expr length “this is a test”
14
抓取字串:
[root@coonote ~]# expr substr “this is a test” 3 5
is is
抓取第一个字符数字串出现的位置:
[root@coonote ~]# expr index "sarasara" a
2
整数运算:
[root@coonote ~]# expr 14 % 9
5
[root@coonote ~]# expr 10 + 10
20
[root@coonote ~]# expr 1000 + 900
1900
[root@coonote ~]# expr 30 / 3 / 2
5
[root@coonote ~]# expr 30 * 3
expr: Syntax error
[root@coonote ~]# expr 30 /* 3
90
注意:使用乘号时,必须用反斜线屏蔽其特定含义。因为shell可能会误解显示星号的意义
使用expr进行四则运算:
[root@coonote ~]# expr \( 10 + 10 \) \* 2 + 100
140