Android

Πώς να αυξήσετε και να μειώσετε τη μεταβλητή σε bash (μετρητής)

How measure Any DC Voltage with Arduino ARDVC-01

How measure Any DC Voltage with Arduino ARDVC-01

Πίνακας περιεχομένων:

Anonim

Μία από τις πιο κοινές αριθμητικές λειτουργίες κατά τη γραφή σεναρίων Bash είναι η αύξηση και η μείωση των μεταβλητών. Αυτό χρησιμοποιείται συχνότερα σε βρόχους ως μετρητή, αλλά μπορεί να συμβεί και αλλού στο σενάριο.

Η αύξηση και η αφαίρεση σημαίνει την προσθήκη ή την αφαίρεση μιας τιμής (συνήθως 1 ), αντίστοιχα, από την τιμή μιας αριθμητικής μεταβλητής. Η αριθμητική επέκταση μπορεί να εκτελεστεί χρησιμοποιώντας τις διπλές παρενθέσεις ((…)) και $((…)) ή με την εντολή αφημένης εντολής.

Στο 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"

Στο επόμενο βρόχο μειώνουμε την τιμή της μεταβλητής 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++ αύξηση postfix: i++ postfix μείωση: i++ i--

Οι χειριστές προθέματος αυξάνουν / μειώνουν τους χειριστές κατά 1 και στη συνέχεια επιστρέφουν τη νέα τιμή των χειριστών. Από την άλλη πλευρά, οι χειριστές postfix επιστρέφουν την τιμή των χειριστών πριν αυξήσουν / μειωθούν.

Τα ακόλουθα παραδείγματα δείχνουν πώς λειτουργεί ο ++ χειριστής όταν χρησιμοποιείται πριν και μετά από τον χειριστή του:

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

Παρακάτω είναι ένα παράδειγμα του τρόπου χρήσης του incrementor postfix σε ένα script bash:

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

Το μειονέκτημα της χρήσης αυτών των χειριστών είναι ότι η μεταβλητή μπορεί να αυξηθεί ή να μειωθεί μόνο κατά 1 .

συμπέρασμα

Η αύξηση και η μείωση των μεταβλητών στο Bash μπορεί να γίνει με πολλούς διαφορετικούς τρόπους. Οποιαδήποτε και αν είναι η μέθοδος που χρησιμοποιείτε, το αποτέλεσμα είναι το ίδιο.

Εάν έχετε οποιεσδήποτε ερωτήσεις ή σχόλια, μπορείτε να αφήσετε ένα σχόλιο.

bash βρόχου