[roc@roclinux ~]$ expr 10 + 1020
expr 会减法:
[roc@roclinux ~]$ expr 20 - 1010
expr 会除法:
[roc@roclinux ~]$ expr 20 / 210
expr 会乘法:
[roc@roclinux ~]$ expr 20 * 2expr: Syntax error
怎么出错了呢?这是因为你还不熟悉 expr 命令书写上的规则:请用空格隔开每个项。请将反斜杠(\)放在 Shell 特殊字符前面。请对包含空格和其他特殊字符的字符串用引号括起来。
根据上面的规则,我们知道乘法的正确写法是:
# 乘法 * 是 Shell 的特殊字符[roc@roclinux ~]$ expr 20 \* 240expr 的四则运算能力如果 expr 只能计算 A 和 B 的加减乘除的话,那么它是不可能在 linux 系统中立足的。
下面我们就来感受一下 expr 的四则运算能力。
[roc@roclinux ~]$ expr \( 10 + 10 \) \* 2 + 100140计算结果正确。看来只要我们把四则运算的基本功学扎实,利用 expr 进行四则运算不在话下。expr 的字符串运算能力expr 不仅有数字计算功能,其实它还具备 *** 作字符串的能力呢,如表 1 所示。
运算 | 表达式 | 意义 |
---|---|---|
match | match STRING REGEXP | STRING 中匹配 REGEXP 字符串并返回匹配 字符串的长度 |
substr | substr STRING POS LENGTH | 从 POS 位置获取长度为 LENGTH 的字符串 |
index | index STRING SUBSTR | 杳找子字符串的起始位置 |
length | length STRING | 计算字符串的长度 |
匹配字符串的长度,若找不到则返回 0:
[roc@roclinux ~]$ expr match "123 456 789" ".*5"6
从指定位置处抓取子字符串:
[roc@roclinux ~]$ expr substr " this is a test" 3 5his i
查找子字符串位置:
[roc@roclinux ~]$ expr index "test for the game" "e"2
计算子字符串长度:
[roc@roclinux ~]$ expr length "this is a test"14
Expr 上得厅堂,下得厨房,不管是数学运算还是字符串运算,都是手到擒来。掌握了 expr 一定能让你在 linux 的学习中更加如鱼得水。 总结
以上是内存溢出为你收集整理的expr命令_Linux expr命令:四则远算和字符串运算全部内容,希望文章能够帮你解决expr命令_Linux expr命令:四则远算和字符串运算所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)