码迷,mamicode.com
首页 > 系统相关 > 详细

Linux之expr命令详解

时间:2018-12-20 00:58:58      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:指定   运算符   tor   unix   exp   解释器   [1]   否则   重复   

expr命令:
    expr命令是一个手工命令行计数器,用于在UNIX/LINUX下求表达式变量的值,一般用于整数值,也可用于字符串。
  –格式为:
    expr Expression(命令读入Expression 参数,计算它的值,然后将结果写入到标准输出)
  –参数应用规则:
    用空格隔开每个项;
    用 \ (反斜杠) 放在 shell 特定的字符前面;
    对包含空格和其他特殊字符的字符串要用引号括起来
  


 

–expr用法实例讲解:

    expr命令一般用于整数值,但也可用于字符串
  一般格式为:
    #expr argument operator argument
    expr也是一个手工命令行计数器:
    >#expr 10 + 10
    >20

  技术分享图片

    注意:运算符号两边都有空格
    使用乘法计算时,要使用斜线将*进行转义,否则shell解释器会解析*特殊符号的
    >expr 20 \* 2
    >40

  技术分享图片



增量计数
  expr在循环中用于增量计算。首先,循环初始化为0,然后循环值加1,反引号的用法意
  即替代命令。最基本的一种是从(expr)命令接受输出并将之放入循环变量。
  $a=0
  b=`expr $a + 1`

  技术分享图片

 

数值测试
  可以用expr测试一个数。如果试图计算非整数,将返回错误。
  非整数:

  # rr=1.1
  # expr $rr + 1
  expr: non-integer argument

  整数:
  # bb=1
  # expr $bb + 1
  2

  技术分享图片
模式匹配
  expr也有模式匹配功能。可以使用expr通过指定冒号选项计算字符串中字符数。.*意即任何字符重复0次或多次
  # value=linux.do
  # expr $value : ‘.*‘
  8

  技术分享图片

 

数组
  $varname[0]=value1
  $varname[1]=value2
  ....
  来定义用
  $echo ${varname[0]}
  方式来引用  
  ### 字串长度   
  shell>> expr length "this is a test"
  14   
  ### 数字商数   
  shell>> expr 14 % 9
  5   

  技术分享图片

  ### 从位置处抓取字串
  shell>> expr substr $value 2 3 
  inu

  技术分享图片

  ### 数字串 only the first character
  shell>> expr index $value u
  4

  技术分享图片

  ### 字串真实重现
  shell>> expr $value 
  linux.do

  技术分享图片

 

注:本文中所有的$value都是在环境中预先定义的变量“value=linux.do”


为了便于交流,大家可以进群交流,分享经验,共同进步!

技术分享图片

 

Linux之expr命令详解

标签:指定   运算符   tor   unix   exp   解释器   [1]   否则   重复   

原文地址:https://www.cnblogs.com/hui-shao/p/expr.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!