linux 设置变量计数,在Bash中增加和减少变量(计数器)的方法

本文介绍在Bash中增加和减少变量(计数器)的方法,可应用在Linux平台上。编写Bash脚本时最常见的算术运算之一是增加和减少变量,这通常在循环中用作计数器,但它也可以在脚本的其他地方出现。增加和减少意味着分别从数值变量的值中添加或减去值(通常为1),可以使用双括号((...))和$((...))或let内置命令命令执行算术扩展。在Bash中,有多种方法可以增加/减少变量,本文为你做介绍。

e25929fc38d4edb4c57022b081320939.png

使用+和-运算符

增加/减少变量的最简单方法是使用+和-运算符:

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"

可以在操作数之前或之后使用运算符,它们也被称为:

1、前缀增量:++i

2、前缀减量:--i

3、后缀增量:i++

4、后缀减量:i--

前缀运算符首先将运算符递增/递减1,然后返回运算符的新值,另一方面,后缀运算符在递增/递减之前返回运算符的值。

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

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

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脚本中使用postfix incrementor的示例:

#!/bin/bash

i=0

while true; do

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

exit 1

fi

echo i: $i

((i++))

done

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

结语

在Bash中的变量的增加和减少可以有许多不同的方式执行,但是不管使用哪种方法,结果都是一样的。

相关主题

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值