shell脚本 运算符

这篇具有很好参考价值的文章主要介绍了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`"

整数比较运算符

运算符 说明 举例
-eq equals 检测两个数是否相等,相等返回 0, 否则返回1。 [ $a -eq $b ] 返回 1。
-ne not equals检测两个数是否不相等,不相等返回 true。 [ $a -ne $b ] 返回 0。
-gt greater than检测左边的数是否大于右边的, 是返回0, 否则1 [ $a -gt $b ] 返回 1。
-lt lower than检测左边的数是否小于右边的, 是返回0, 否则1 [ $a -lt $b ] 返回 0。
-ge greater equals检测左边的数是否大于等于右边的, 是返回0, 否则1 [ $a -ge $b ]返回 1。
-le lower equals检测左边的数是否小于等于右边的, 是返回0, 否则1 [ $a -le $b ]返回 0。
< 检测左边的数是否小于右边的, 是返回0, 否则1 (($a<$b)) 返回0
<= 检测左边的数是否小于等于右边的, 是返回0, 否则1 (($a<=$b)) 返回0
> 检测左边的数是否大于右边的, 是返回0, 否则1 (($a>$b)) 返回1
>= 检测左边的数是否大于等于右边的, 是返回0, 否则1 (($a>=$b)) 返回1

注意: 整数比较运算符只支持整数,不支持小数与字符串,除非字符串的值是整数数字。

每个命令都有返回值,  返回0代表成功, 返回1代表失败

 

 字符串比较运算

[ ]需要加转义符 \        [[ ]]不需要

运算符 说明 举例
== 或 =

相等

比较两个字符串或数字,相同则返回 0

可以使用 =

[ $a == $b ]

[ $a = $b ]

[[ $a == $b ]]

[[ $a = $b ]]

!=

不相等

比较两个字符串或数字,不相同则返回 0

[ $a != $b ]

[[ $a != $b ]]

<

小于,

比较两个字符串或数字, 小于返回0

[ $a \< $b ]

[[ $a < $b ]] 

>

大于,

比较两个字符串或数字, 大于返回0

[ $a \> $b ]

[[ $a > $b ]] 

-z

检测字符串长度是否为0,

为0返回  0 true

[ -z $a ] 
-n

检测字符串长度是否不为 0,

不为 0 返回 0 true

[ -n "$a" ] 
$

检测字符串是否不为空,

不为空返回 0 

[ $a ] 

字符串比较没有 <= 可以通过 [[ "a" < "b" || "a" = "b" ]]

布尔运算符        必须与 [ ] 使用

! 取反

-a 与运算 全部成立返回0

-o 或运算 一个成立返回0

布尔运算符必须与 [ ] 使用 或 与 test命令一起使用

逻辑运算 

! 逻辑非

&& 逻辑与 

|| 逻辑或 

逻辑运算符 必须在 [[ ]] 或 (( )) 执行        !可以用在 [ ] [[ ]] 中, 不可以在 (( ))

文件检测运算符

文件是否存在 -e

是否可读 -r

是否可执行 -x

是否为空 -s

是否可写 -w

是否是目录 -d

是否是普通文件 -f文章来源地址https://www.toymoban.com/news/detail-436770.html

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

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

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

相关文章

  • 运算符之算术运算符、关系运算符、逻辑运算符、复合赋值运算符、其他运算符

    运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C# 有丰富的内置运算符,分类如下: 算术运算符 关系运算符 逻辑运算符 复合赋值运算符 位运算符 其他运算符 运算符优先级(由高到低) 类别 运算符 结合性 后缀 ()[]-.++-- 从左到右 一元 =-!~ ++ -- (type)* sizeof 从

    2024年02月09日
    浏览(59)
  • Python教程(13)——Python运算符详解|算术运算符|比较运算符|逻辑运算符|位运算符

    Python的运算符是用于执行各种操作的符号或符号组合。它们用于操作数据并进行算术、比较、逻辑和其他类型的运算。我们所熟知的加减乘除也是运算符中的一种。Python提供了多种类型的运算符,有算术运算符,比较运算符,赋值运算符,逻辑运算符,位算符等等。 算术运算

    2024年02月09日
    浏览(54)
  • C语言中的运算符及算术运算符详解

    在C语言中,运算符是一种特殊的符号,用于表示数据的运算、赋值和比较等。本文将介绍C语言中的运算符,特别关注算术运算符,并提供一些示例来说明它们的用法。 C语言中的运算符可以按照其功能和操作数个数进行分类。以下是一些主要的运算符分类: 1. 按照功能分类

    2024年01月22日
    浏览(70)
  • 汇编-算术运算符

    下面给出了一些有效表达式和它们的值:

    2024年02月06日
    浏览(46)
  • (77)TCL脚本命令【运算符(expr运算表达式)】

    1.1 TCL简介 1.2 TCL的起源与发展 1.3 TCL语言与库介绍 1.4 TCL运行环境 1.5 TCL脚本命令【运算符(expr运算表达式)】 1.6 结束语 Tcl 语言的全称 Tool Command Language,即工具命令语言。这种需要在 EDA 工具中使用的相当之多,或者说几乎每个 EDA 工具都支持 Tcl 语言。所以对于 IC 专业的

    2024年02月16日
    浏览(41)
  • C# 运算符详解:包含算术、赋值、比较、逻辑运算符及 Math 类应用

    运算符用于对变量和值执行操作。在C#中,有多种运算符可用,包括算术运算符、关系运算符、逻辑运算符等。 算术运算符用于执行常见的数学运算: 递增运算符 ++ 用于将变量的值增加 1,而递减运算符 -- 用于将变量的值减少 1: 在实际编码中,请注意避免在表达式中使用

    2024年01月20日
    浏览(62)
  • 【Lua语法】算术、条件、逻辑、位、三目运算符

    加减乘除取余:+ - * / % Lua中独有的:幂运算 ^ 注意: 1.Lua中没有自增自减(++、–),也没有复合运算符(+=、-=) 2.Lua中字符串可以进行算术运算符操作,会自动转成number 如:“10.3” + 1 结果为11.3 大于 小于 大于等于 = 小于等于 = 等于 == 不等于 ~= 返回值依然是bool 注意: 1.与C

    2024年02月11日
    浏览(48)
  • shell中expr算数运算符使用

    expr(evaluate expressions),表达式求值 直接使用 expr 1 + 1 就能得到结果2,需要注意的是: 运算符、每个数字之间都是要有空格的,不然就是一个字符串; 使用乘号的时候要使用转义符号 * ; 四则运算中,使用了小括号(),也需要转义 ( 1 + 1 ) ; 只对整数进行运算。 还可以直接把结

    2023年04月13日
    浏览(40)
  • SQL 算术运算符:加法、减法、乘法、除法和取模的用法

    存储过程是一段预先编写好的 SQL 代码,可以保存在数据库中以供反复使用。它允许将一系列 SQL 语句组合成一个逻辑单元,并为其分配一个名称,以便在需要时调用执行。存储过程可以接受参数,使其更加灵活和通用。 创建存储过程的语法如下: 执行存储过程的语法如下:

    2024年02月05日
    浏览(58)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包