安卓系统

如何在bash中增加和减少变量(计数器)

目录:

Anonim

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

递增和递减表示分别从数字变量的值中添加或减去一个值(通常为 1 )。 可以使用双括号 ((…)) $((…)) 或使用 let Builtin命令执行算术扩展。

在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 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 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]; then exit 1 fi echo i: $i ((i++)) done

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

结论

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

如果您有任何问题或反馈,请随时发表评论。

bash循环终端