Android

Bagaimana untuk menambah dan menurunkan pembolehubah dalam bash (kaunter)

KOMBINASI PENDEKATAN STEWART DAN BASE EXCESS : CLINICAL APPLICATION

KOMBINASI PENDEKATAN STEWART DAN BASE EXCESS : CLINICAL APPLICATION

Isi kandungan:

Anonim

Salah satu operasi aritmetik yang paling biasa apabila menulis skrip Bash adalah penambahan dan pengurangan pembolehubah. Ini paling sering digunakan dalam gelung sebagai kaunter, tetapi ia boleh berlaku di tempat lain dalam skrip juga.

Incrementing and Decrementing bermaksud menambah atau menolak satu nilai (biasanya 1 ), masing-masing, dari nilai pembolehubah angka. Pengembangan aritmetik boleh dilakukan menggunakan tanda kurung ganda ((…)) dan $((…)) atau dengan perintah yang dibina.

Di Bash, terdapat pelbagai cara untuk menaikkan / menurunkan variabel. Artikel ini menerangkan beberapa daripada mereka.

Menggunakan + dan - Operator

Cara paling mudah untuk menaikkan / menurunkan pembolehubah ialah dengan menggunakan + dan - pengendali.

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

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

Kaedah ini membolehkan anda menaikkan / menurunkan pemboleh ubah oleh mana-mana nilai yang anda mahukan.

Berikut adalah contoh kenaikan pembolehubah dalam satu until gelung:

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

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

The += and -= Operator

Sebagai tambahan kepada pengendali asas yang dijelaskan di atas, bash juga menyediakan operator tugasan += dan -= . Pengendali ini digunakan untuk menaikkan / menurunkan nilai pengendali kiri dengan nilai yang ditentukan selepas pengendali.

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

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

Dalam gelung while berikut, kita menurunkan nilai pemboleh ubah i dengan 5 .

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

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

Menggunakan ++ dan -- Operator

Peningkatan dan pengurangan operator ++ dan masing-masing, operan dengan 1 dan mengembalikan nilai.

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

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

Pengendali boleh digunakan sebelum atau selepas pengendalian. Mereka juga dikenali sebagai:

  • kenaikan awalan: pengurangan awalan ++i : --i peningkatan postfix: i++ pengurangan postfix: i--

Operator awalan pertama menaikkan / menurunkan operator dengan 1 dan kemudian mengembalikan nilai baru operator. Sebaliknya, pengendali postfix mengembalikan nilai operator sebelum ia telah ditambah / diturunkan.

Contoh-contoh berikut menunjukkan bagaimana pengendali ++ berfungsi apabila digunakan sebelum dan selepas operannya:

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

Berikut ialah contoh cara menggunakan inclementor postfix dalam skrip bash:

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

Kelemahan menggunakan pengendali ini adalah bahawa pemboleh ubah hanya boleh ditambah atau diturunkan oleh 1 .

Kesimpulannya

Pemboleh ubah inkrementing dan decrementing di Bash boleh dilakukan dalam pelbagai cara. Apa sahaja kaedah yang anda gunakan, hasilnya adalah sama.

Jika anda mempunyai sebarang pertanyaan atau maklum balas, jangan ragu untuk meninggalkan komen.

terminal gelung bash