expr命令

expr命令计算给定表达式并显示其相应的输出,其被使用用于:基本操作像加法、减法、乘法、除法和模等等整数,求值正则表达式,字符串操作,如子字符串,字符串长度等。

语法

expr [EXPRESSION | OPTION]

参数

  • --help: 输出帮助信息。
  • --version: 输出版本信息。

表达式

  • ARG1 | ARG2: ARG1,如果它既不为null也不为0,否则为ARG2
  • ARG1 & ARG2: 如果两个参数都不为null0,则为ARG1,否则为0
  • ARG1 < ARG2: ARG1小于ARG2
  • ARG1 <= ARG2: ARG1小于等于ARG2
  • ARG1 = ARG2: ARG1等于ARG2
  • ARG1 != ARG2: ARG1ARG2不相等。
  • ARG1 >= ARG2: ARG1大于或等于ARG2
  • ARG1 > ARG2: ARG1大于ARG2
  • ARG1 + ARG2: ARG1ARG2的算术和。
  • ARG1 - ARG2: ARG1ARG2的算术差。
  • ARG1 * ARG2: ARG1ARG2的算术乘积。
  • ARG1 / ARG2: ARG1除以ARG2的算术商。
  • ARG1 % ARG2: ARG1除以ARG2的算术余数。
  • STRING : REGEXP: 正则表达式REGEXPSTRING中的定位模式匹配。
  • match STRING REGEXP: 与STRING相同REGEXP
  • substr STRING POS LENGTH: STR的子字符串,POS1开始计数。
  • index STRING CHARS: 找到任何CHARSSTRING中的索引,或者为0
  • length STRING: 字符串长度。
  • + TOKEN: 将TOKEN解释为字符串,即使它是像match这样的关键字或像/这样的操作符。
  • ( EXPRESSION ): EXPRESSION的值。

示例

计算12 + 9

expr 12 + 9
# 21

计算12 * 2

expr 12 \* 2 # 24

shell脚本中的变量执行操作,注意保存成.sh文件并赋权限755再执行。

echo "Enter two numbers"
read x 
read y
sum=`expr $x + $y`
echo "Sum = $sum"

每日一题

https://github.com/WindrunnerMax/EveryDay

参考

https://www.computerhope.com/unix/uexpr.htm https://www.runoob.com/linux/linux-comm-expr.html https://www.geeksforgeeks.org/expr-command-in-linux-with-examples/