Android

Bash (sayaç) değişkeninin artırılması ve azaltılması

19.Linux для Начинающих - Скрипты Linux Bash, Часть-1

19.Linux для Начинающих - Скрипты Linux Bash, Часть-1

İçindekiler:

Anonim

Bash betikleri yazarken en yaygın kullanılan aritmetik işlemlerden biri değişkenleri artırmak ve azaltmaktır. Bu çoğunlukla döngülerde sayaç olarak kullanılır, ancak kodun başka bir yerinde de olabilir.

Artış ve Azaltma, sayısal bir değişkenin değerinden sırasıyla bir değer (genellikle 1 ) eklemek veya çıkarmak anlamına gelir. Aritmetik genişleme, çift parantez ((…)) ve $((…)) veya let yerleşik komutuyla gerçekleştirilebilir.

Bash'de bir değişkeni artırmanın / azaltmanın birden çok yolu vardır. Bu makalede bazıları açıklanmaktadır.

+ Ve - İşleçlerini Kullanma

Bir değişkeni artırmanın / azaltmanın en basit yolu + ve - işleçlerini kullanmaktır.

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

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

Bu yöntem, değişkeni istediğiniz herhangi bir değere göre artırmanıza / azaltmanıza olanak tanır.

Aşağıda, bir döngü içinde bir değişkeni artırmaya bir örnek verilmiştir:

i=0 until do echo i: $i ((i=i+1)) done

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

+= Ve -= İşleçleri

Yukarıda açıklanan temel işleçlere ek olarak bash, += ve -= atama işleçlerini de sağlar. Bu işleçler, soldaki işlenenin değerini, işleçten sonra belirtilen değerle artırmak / azaltmak için kullanılır.

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

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

Aşağıdaki while döngüsünde i değişkeninin değerini 5 azaltıyoruz.

i=20 while do echo Number: $i let "i-=5" done

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

++ ve -- Operatörlerini Kullanma

++ ve -- operatörleri sırasıyla 1 ve işlenen değerlerini arttırır ve azaltır.

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

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

İşleçler işlenmeden önce veya sonra kullanılabilir. Ayrıca şu şekilde bilinir:

  • önek artışı: ++i önek azalması: --i postfix artışı: i++ postfix azalması: i--

Önek operatörleri önce operatörleri 1 arttırır / azaltır ve ardından operatörlerin yeni değerini döndürür. Öte yandan postfix operatörleri, artırılmadan / azaltılmadan önce operatörlerin değerini döndürür.

Aşağıdaki örnekler, ++ işlecinin ediminden önce ve sonra kullanıldığında nasıl çalıştığını gösterir:

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

Aşağıda, bash betiğinde postfix artırıcısının nasıl kullanılacağına dair bir örnek verilmiştir:

#!/bin/bash i=0 while true; do if]; then exit 1 fi echo i: $i ((i++)) done

Bu operatörleri kullanmanın dezavantajı, değişkenin sadece 1 arttırılabilmesi veya azaltılabilmesidir.

Sonuç

Bash'de değişkenleri arttırma ve azaltma birçok farklı şekilde gerçekleştirilebilir. Hangi yöntemi kullanırsanız kullanın sonuç aynıdır.

Herhangi bir sorunuz veya geri bildiriminiz varsa, yorum bırakmaktan çekinmeyin.

bash loop terminali