良许Linux教程网 干货合集 Bash变量递增或递减操作

Bash变量递增或递减操作

编写 Bash 脚本时最常见的算术运算之一是递增和递减变量。这通常在循环中用作计数器,但它也可以在脚本的其他地方出现。

image-20220121123046311

递增和递减意味着分别从数值变量的值中添加或减去值(通常为 1 )。可以使用双括号 ((…)) 和 $((…)) 或使用内置的 let 命令执行算术扩展。

在 Bash 中,有多种方法可以加/减变量。本文解释了其中的一些内容。

使用 + 和 – 操作员

加/减变量的最简单方法是使用 + 和 – 运算符。

i=$((i+1))
((i=i+1))
let "i=i+1"

i=$((i-1))
((i=i-1))
let "i=i-1"

此方法允许您将变量递增/递减所需的任何值。

以下是在 until 循环中递增变量的示例:

i=0

until [ $i -gt 3 ]
do
 echo i: $i
 ((i=i+1))
done

i: 0
i: 1
i: 2
i: 3

使用 += 与 -= 运算符

除了上面解释的基本运算符之外, bash 还提供赋值运算符 += 和 -= 。这些运算符用于使用运算符后指定的值递增/递减左操作数的值。

((i+=1))
let "i+=1"

((i-=1))
let "i-=1"

在接下来的 while 循环中,我们将 i 变量的值递减 5 。

i=20

while [ $i -ge 5 ]
do
 echo Number: $i
 let "i-=5"
done

Number: 20
Number: 15
Number: 10
Number: 5

使用 ++ 和 — 运算符

在 ++ 和 — 分别运营商增量和减量,其操作 1 和返回值。

((i++))
((++i))
let "i++"
let "++i"

((i--))
((--i))
let "i--"
let "--i"

可以在操作数之前或之后使用运算符。它们也被称为: •前缀增量: ++i •前缀减量: –i •后缀增量: i++ •后缀减量: i–

前缀运算符首先让变量加/减 1 ,然后返回变量的新值。后缀运算符在变量加/减之前返回运算符的值。

如果您只想增加/减少变量,那么如果您使用前缀或后缀运算符则没有区别。只有在某些其他操作中使用运算符的结果或将其分配给另一个变量时,它才会有所不同。

以下示例演示了 ++ 操作符在其操作符之前和之后使用时的工作方式:

x=5
y=$((x++))
echo x: $x
echo y: $y

x: 6
y: 5

x=5
y=$((++x))
echo x: $x
echo y: $y

x: 6
y: 6

下面是在 bash 脚本中使用的示例:

#!/bin/bash
i=0
while truedo
 if [[ "$i" -gt 3 ]]; then
      exit 1
 fi
 echo i: $i
 ((i++))
done

使用这些运算符的缺点是变量只能递增或递减 1 。

结论

Bash 中的变量的递增和递减可以以许多不同的方式执行。无论使用何种方法,结果都是一样的。

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

img
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部