shell 变量的数值计算实践 expr
expr(evaluate(求值)expressions(表达式))命令既可以用于整数运算,也可以用于相关字符串长度、匹配等的运算处理
expr 用做计算
必须有一个空格才会计算
[root@salt-minion- sh1]# expr + [root@salt-minion- sh1]# expr +
没有空格不计算
[root@salt-minion- sh1]# expr +
+
有变量的计算
[root@salt-minion- sh1]# i=
[root@salt-minion- sh1]# expr $i +
expr在Shell中可配合变量进行计算,但需要用反引号将计算表达式括起来。
[root@salt-minion- sh1]# i=
[root@salt-minion- sh1]# e=`expr $i + `
[root@salt-minion- sh1]# echo $e
通过expr判断变量或字符串是否为整数
[root@salt-minion- sh1]# i= [root@salt-minion- sh1]# expr $i + &>/dev/null #<==把i和整数相加,&>/dev/null
表示不保留任何输出。
[root@salt-minion- sh1]# echo $? #<==输出返回值。 [root@salt-minion- sh1]# i=mike
[root@salt-minion- sh1]# expr $i + &>/dev/null <==同样把i和整数相加,不保留任何输出。
[root@salt-minion- sh1]# echo $?
#<==返回为非0,则证明i的值不是整数,因为赋值的是mike
结论:利用expr做计算,将一个未知的变量和一个已知的整数相加,看返回值是否为0,
如果为0就认为做加法的变量为整数,否则就不是整数
利用expr计算字符串的长度
[root@salt-minion- sh1]# char="mike"
[root@salt-minion- sh1]# expr length "$char" #<==利用expr的length函数计算字符
串长度。
shell 变量的数值计算实践 expr的更多相关文章
- SHELL (4) —— 变量的数值计算实践
摘自:Oldboy Linux运维——SHELL编程实战 利用(())双括号进行比较及判断: [root@yeebian ~]# echo $((3<8)) 1 #1表示真. [root@yee ...
- 【第三章】Shell 变量的数值计算
一.算数运算符 shell中常见的算术运算符: shell中常见的算术命令: 1. 整数运算 方法一:expr expr命令就既可以用于整数运算,也可以用于相关字符串长度.匹配等的运算处理: exp ...
- shell变量的数值计算
shell中常见的算术运算命令如下 1.(()) 用于整数运算的常用运算符,效率很高 2.let 用于整数运算,类似于 (()) 3.expr 可用于整数计算,但还有很多其他的额外功能 4.bc ...
- shell基础--变量的数值计算
变量的数值计算 1.$((表达式)) (1).实验1 [root@~_~ day4]# cat test.sh #!/bin/bash a=6 b=2 echo "a-b=$(($a-$b) ...
- SHELL (2) —— Shell变量的核心基础知识和实践
摘自:Oldboy Linux运维——SHELL编程实战 Shell变量:用一个固定的字符串(也可能是字符.数字等的组合)代替更多.更复杂的内容,该内容里可能还会包含变量.路径.字符串等其它的内容. ...
- Shell变量知识进阶
一,Shell中特殊且重要的变量 $0结合dirname和basename分别取出脚本名称和脚本路径 [root@192-168-3-163 scripts]# cat test.sh #!/bin/ ...
- Shell变量概述
目录 1. Shell变量概述 1.定义变量,变量名=变量值.不能出现"-横杠"命令 2.引用变量,$变量名 3.查看变量,set显示所有变量,包括自定义变量和环境变量 4.取消变 ...
- shell变量详解
1 shell变量基础 shell变量是一种很"弱"的变量,默认情况下,一个变量保存一个串,shell不关心这个串是什么含义.所以若要进行数学运算,必须使用一些命令例如let.de ...
- 三、Shell变量类型和运算符
一.Shell变量的应用 1.Shell变量的种类 ·用户自定义变量:由用户自己定义.修改和使用 ·预定义变量:Bash预定义的特殊变量,不能直接修改 ·位置变量:通过命令行给 ...
随机推荐
- 超酷!纯CSS3烧烤动画实现教程
今天在老外的网站上看到一款很有创意的纯CSS3动画,是模拟烧烤活动的.款动画模拟了一个烧烤架,烧烤架上的食物也都是用纯CSS3绘制而成,没有用一张图片,效果相当逼真.另外一个有意思的是,这个CSS3烧 ...
- DES ECB 模式 JAVA PHP C# 实现 加密 解密 兼容
版本一: JAVA: import org.slf4j.Logger; import org.slf4j.LoggerFactory; import sun.misc.BASE64Decoder; i ...
- 【问题集】redis.clients.jedis.exceptions.JedisDataException: ERR value is not an integer or out of range
redis.clients.jedis.exceptions.JedisDataException: ERR value is not an integer or out of range incrm ...
- MacOS install configure php-fpm
php-fpm 是预装在mac os上的,你只需要配置就好了.这个服务监听9000端口. 1. 为配置文件准备一些目录 mkdir -p /usr/share/php/var/run mkdir -p ...
- mysql8.0驱动问题
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</a ...
- B - Hamburgers
Polycarpus loves hamburgers very much. He especially adores the hamburgers he makes with his own han ...
- 网络通信协议八之UDP协议详解
视频传输中使用UDP协议比较多 UDP协议的责任 >>创建进程到进程间的通信(由端口号完成) >>有限的差错控制,出现差错悄悄丢弃报文(注意这点和TCP协议的区别)
- MINIUI后台获取数据
1.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...
- 洛谷P1605 迷宫【dfs】
题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫 中移动有上下 ...
- php实现简单消息发送+极光推送系统
前几天刚写完的一个东西,写的比较简单,没有使用其他插件,原生php+计划任务实现 极光推送的代码 /* $receiver="registration_id" : [ " ...