如何在Bash中递增和递减变量-计数器

linux 如何在Bash中递增和递减变量-计数器 编写Bash脚本时,最常见的算术运算之一是递增和递减变量。这通常在循环中用作计数器,但是它也可以在脚本的其他位置发生。递增和递减表示分别从数字变量的值中添加或减去一个值(通常是1)。可以使用双括号((...))和$((...))或使用内置命令let来执行算术扩展。在Bash中,有多种递增/递减变量的方法。本文介绍了其中一些。 By myfreax 29 Oct 2019

撰写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里的递增和递减变量能通过很多各种方式实行。不管应用什么样的方法,结论都是一样的。

如果您有其他问题或意见反馈,请随时随地。

LINUX

Linux 设置主机名(Linux设置主机名与IP)

2023-1-19 12:34:37

LINUX

如何使用sed查找和替换文件中的字符串(sed匹配替换文件的字符串)

2023-1-19 12:38:59

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索