linux sh脚本 递增,如何在 Bash 中对变量递增或者递减

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

递增和递减意味着分别从数值变量的值中添加或减去值(通常为 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 true; do

if [[ "$i" -gt 3 ]]; then

exit 1

fi

echo i: $i

((i++))

done

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

结论

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

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值