shell中expr算数运算符使用

这篇具有很好参考价值的文章主要介绍了shell中expr算数运算符使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

expr

expr(evaluate expressions),表达式求值

1.1 整数求值表达式

直接使用expr 1 + 1就能得到结果2,需要注意的是:

  • 运算符、每个数字之间都是要有空格的,不然就是一个字符串;
  • 使用乘号的时候要使用转义符号\*;
  • 四则运算中,使用了小括号(),也需要转义\( 1 + 1 \);
  • 只对整数进行运算。

还可以直接把结果赋值给变量(在交互式shell):

res=`expr 1 + 1`
echo $res
echo `expr 2 \* 3`   # 这里一定要转义符
expr 2 \* 3   # 不要echo,这样写也是可以直接出结果
echo `expr \( 10 + 10 \) \* 2`    # 符号与数字之间也一定要转义符

Tips:整个表达式是要用反引号括起来的。

1.2 字符串相关

注意这下面字符串的第一个字符的下标都是从1开始的。

(1) 计算字符串长度

语法:expr length 字符串

expr length “hello”
# 返回得到:5

(2) 截取字符串

语法:expr substr 字符串 start n

  • start:截取字符串的起始位置,注意是从1开始;
  • n:截取字符串的长度。

expr substr “hello” 2 1
# 返回得到的是:e

Tips:

  • 这里只能是字符串,不能是引用的变量;相反,前面讲到的shell字符串在(#3.4. 字符串截取)中,截取字符串是引用变量的方式。
  • expr下标都是从1开始的,而上面字符串的操作,下标都是从0开始的。

(3) 获取第一个字符出现的位置

语法:expr index 字符串 需查找的字符

expr index “hello” e
# 返回得到的是:2

(4) 正则匹配

它可以理解为,返回的是匹配的字符串的长度。

方式一:expr match 字符串 正则表达式

expr match “hello world” “.*l”
# 返回得到的是:10

方式二:expr 字符串 : 正则表达式

expr “hello world” : “.*e”
# 返回得到的是:2文章来源地址https://www.toymoban.com/news/detail-412277.html

到了这里,关于shell中expr算数运算符使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【从零学习python 】06. Python中运用算数运算符进行计算和字符串拼接

    现代的计算机和依赖计算机的设备里都用到二进制(即0和1)来保存和表示数据,一个二进制表示一个比特(Bit)。 在二进制的基础上,计算机还支持八进制和十六进制这两种进制。 除了计算机里的进制以外,我们生活中经常用到的是十进制。 Python语言支持二进制、八进制、十六

    2024年02月13日
    浏览(54)
  • shell脚本 运算符

    算术运算符 #!/bin/bash # 使用read命令读取输入数据 read -p \\\"请输入第1个数字:\\\" a read -p \\\"请输入第2个数字:\\\" b # 对2个数字进行算数运算 echo \\\"a=${a} b=${b}\\\" echo \\\"a+b=`expr $a + $b`\\\" echo \\\"a-b=`expr $a - $b`\\\" echo \\\"a*b=`expr $a * $b`\\\" echo \\\"b/a=`expr $b / $a`\\\" echo \\\"b%a=`expr $b % $a`\\\" 整数比较运算符 运算符 说

    2024年02月03日
    浏览(46)
  • Shell 基本运算符

    Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符串运算符 文件测试运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。 expr 是一款表达式计算工具,使用它能完成表达式的求值操作

    2024年02月12日
    浏览(44)
  • 7、hive shell客户端与属性配置、内置运算符、函数(内置运算符与自定义UDF运算符)

    1、apache-hive-3.1.2简介及部署(三种部署方式-内嵌模式、本地模式和远程模式)及验证详解 2、hive相关概念详解–架构、读写文件机制、数据存储 3、hive的使用示例详解-建表、数据类型详解、内部外部表、分区表、分桶表 4、hive的使用示例详解-事务表、视图、物化视图、DDL

    2024年02月09日
    浏览(48)
  • 【Linux Shell】5. 运算符

    运算符 说明 举例 = 赋值 a=$b 把变量 b 的值赋给 a。 原生 bash 不支持简单的数学运算,但是可以通过其他命令来实现 ,例如 awk 和 expr,expr 最常用(expr 是一款表达式计算工具,使用它能完成表达式的求值操作)。 完整的 expr 表达式要被 ` ` 包含 ,注意这个字符不是常用的单

    2024年01月23日
    浏览(37)
  • shell脚本学习记录1(运算符)

    我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为: $n 。 n  代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 以下实例我们向脚本传递三个参数,并分别输出,其中  $0  为执行的文件名(包含文件路径):  另

    2024年02月08日
    浏览(45)
  • 测牛学堂:2023软件测试linux系统学习之shell脚本的运算符(字符串运算符)

    shell的逻辑运算符 shell 中的逻辑运算符有两个。 表示逻辑且,运算符两边的结果都是true,才会返回true || 表示逻辑或,运算符两边的结果有一个为true,则为true 他们的使用场景和布尔运算的很像,只是写代码的形式不一样。 逻辑运算符两边需要用[[]] 来包裹。 代码示例:逻

    2023年04月25日
    浏览(54)
  • shell脚本中的运算符和条件判断

    在Shell脚本中,你可以使用各种运算符来执行数学运算、比较和逻辑操作。 计算方式: $[ ] $(( )) 例: a= $[(9+5) 90] 打印输出结果 == echo $a test $a = 90 [ $a = 90 ] 注意事项: 判断处理中间空格隔开 关系运算符: -eq 等于 -lt 小于 -gt 大于 -ne 不等于 -le 小于等于 -ge 大于等于 文件类型

    2024年04月17日
    浏览(42)
  • Linux【实操篇】—— Shell 编程入门、变量、运算符、条件判断、流程控制

    目录 一、Shell 编程入门 1. 认识 Shell 2. Shell 脚本的创建与执行         二、Shell 变量 1. 系统变量和自定义变量 2. 变量的基本规则 3. 设置环境变量 4. 位置参数变量 5. 预定义变量 三、运算符 四、条件判断 五、流程控制 1. if 语句 2. case 语句 3. for 循环 4. while 循环 六、rea

    2024年02月03日
    浏览(44)
  • 测牛学堂:2023软件测试linux深入学习指南(shell文件运算符详解)

    文件测试运算符 文件测试运算符用于检测文件的各种属性。 -d 检测文件是否是目录,是返回true,不是返回false -f 检测围歼是否是普通文件,是返回true,不是返回false -r 检测文件是否可读,是返回ture,不是返回false -w 检测文件是否可写,是返回true,不是返回false -e 检测文件是否

    2023年04月25日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包