Linux中expr命令

shell中不能简简单单的加减乘除,需要使用expr。expr只能用于整数值,一般格式为 expr arg1 operator arg2

注意:

1. 运算符左右都有空格,如果没有空格表示是字符串连接

2. 使用乘号时,必须用反斜杠屏蔽其特殊含义。因为shell可能会误解显示星号的意义 expr 30 * 3

3. 如果计算的是非整数,将返回错误。expr: non-numericargument

4. expr默认是直接把运算结果输出到控制台,如果想赋值 需要使用反引号

补充:

1. 对于四则运算,最好使用$(())代替expr,效率更高,而且运算符两边不用空格

2. 对于四则运算,也可以使用$[],运算符两边也不需要空格

expr 字符串操作

1. 返回字符串长度:expr length 字串

[root@zq-crmtest-20423tmp]# expr length "hello world"

11

2. 返回string1中包含string2中任意字符的第一个位置: expr index string1 string2

[root@zq-crmtest-20423tmp]# expr index "abc" "b"

2

3. 提取字符串的子串:expr substr 内容 起始 终止

Linux中expr命令的更多相关文章

  1. Linux中exec命令相关

    Linux中exec命令相关 exec和source都属于bash内部命令(builtins commands),在bash下输入man exec或man source可以查看所有的内部命令信息. b ...

  2. linux中touch命令参数修改文件的时间戳(转)

    linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件,以下是linux中touch命令参数的使用方法: touch [-acm][-r ...

  3. linux中执行命令权限不够怎样处理

    在linux中执行命令权限不够就要增加权限,先看遇到的情况 查看权限情况 那就赋予权限 执行命令

  4. Linux中监控命令top命令使用方法详解

    收集了两篇关于介绍Linux中监控命令top命令的详细使用方法的文章.总的来说,top命令主要用来查看Linux系统的各个进程和系统资源占用情况,在监控Linux系统性能方面top显得非常有用,下面就 ...

  5. Linux中date命令的各种实用方法--转载

    在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,自己也曾经为时间的各种表示方法和如何修改时间而困惑,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的 ...

  6. linux中查找命令find、locate、whereis、which、type区别

    linux中查找命令find.locate.whereis.which.type区别 1. find Java代码 find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件.与查询数据库(/ ...

  7. Linux中service命令和/etc/init.d/的关系

    Linux中service命令和/etc/init.d/的关系   service xxx启动 /etc/init.d/ 目录下的xxx脚本 如一个脚本名为 mysvc保存在/etc/init.d/下 ...

  8. 13 Basic Cat Command Examples in Linux(转) Linux中cat命令的13中基本用法

    Cat (串联) 命令是Linux/Unix开源系统中比较常用的一个命令.我们可以通过Cat命令创建一个或多个文件,查看文件内容,串联文件并将内容输出到终端设备或新的文件当中,这篇文章我们将会以实例的 ...

  9. 12个 Linux 中 grep 命令的超级用法实例

    12个 Linux 中 grep 命令的超级用法实例 你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请grep来帮你吧. grep是每个Linux发行版都预装的一 ...

  10. Linux中find命令的用法汇总

    Linux中find命令的用法汇总 https://www.jb51.net/article/108198.htm

随机推荐

  1. [FAQ] PHP Warning: json_encode(): double INF does not conform to the JSON spec

    如果待 json 编码元素的数值趋近无穷大,会有这个提示. 比如:小数位超出长度. 解决方式建议保留固定长度的位数,也可以四舍五入. round(sprintf('%.11f', xxxxx), 10 ...

  2. dotnet 7 已知问题 WPF 的 TreeView 开启虚拟化之后只显示首项

    本文记录 WPF 在 dotnet 7 的一个已知问题,此问题当前已修复,只需更新 SDK 或运行时即可.使用 TreeView 在开启虚拟化之后只显示首项,其他项不显示.本文将告诉大家此问题的原因和 ...

  3. dotnet 7 WPF 破坏性改动 按下 F3 让 DataGrid 自动排序

    本文记录在 dotnet 7 下的 WPF 的一个破坏性改动.在 dotnet 7 下的 WPF 支持 DataGrid 在按下 F3 键的时候,自动按照当前所选列进行列自动排序.这将会让原本采用 F ...

  4. dotnet OpenXML 解析 PPT 图表 解析日期时间表示内容

    在 OpenXML 里的图表存放的日期时间很多存放的是数值,需要进行转换才能获取到用户可见的字符串 日期在 OpenXML 里可以使用数值存放,需要根据数值和格式化字符串转换为用户可见的字符串 如以下 ...

  5. CF1097C Yuhao and a Parenthesis

    CF1097C Yuhao and a Parenthesis stl 乱搞做法,感觉比正解更直接. 每个字符串内部能匹配的尽可能匹配. 匹配完成后,检验剩余序列是否只含有 ( 或只含有 ) 或为空, ...

  6. ubuntu编译与安装 OpenSSL-1.0.0

    apt-get purge openssl rm -rf /etc/ssl #删除配置文件 编译与安装 OpenSSL prefix 是安装目录,openssldir 是配置文件目录,另外建议安装两次 ...

  7. js图片懒加载,在不做分页的情况下的解决方案

    Intersection Observer API 1.注意点 一般都是后端返回数据, 用 this.$nextTick(() => { this.handleScroll(); }); 确保d ...

  8. Vue3 echarts 组件化使用 resizeObserver

    点击查看代码 const resizeObserver = ref(null); //进行初始化和监听窗口变化 onMounted(async () => { await nextTick(() ...

  9. 解析 ABP vNext 依赖注入实现【属性注入】的原理

    前言 这几天闲来没事看看ABP vNext的文档和源码,关于关于依赖注入(属性注入)这块儿产生了兴趣. 我们都知道.Volo.ABP 依赖注入容器使用了第三方组件Autofac实现的.有三种注入方式, ...

  10. 超全、超简单Vue微信公众号授权登录指南

    <template> <div id="app"> <h1>微信授权登陆</h1> <div> <div> ...