Skip to main content

Bash IF-nyilatkozat (feltételes) írása

9 Rarest Cars In The World And Their Price Tags (Június 2026)

9 Rarest Cars In The World And Their Price Tags (Június 2026)
Anonim

Az if-utasítással, amely a feltételes utasítás egyik fajtája, a megadott feltételeknek megfelelően különböző műveleteket hajthat végre. Hatékonyan hat a rendszer döntési képességére.

Az if-nyilatkozat legegyszerűbb formája például a következő:

count = 5, ha $ count == 5 echo "$ count" fi

Ebben a példában a "számláló" változót használjuk az if-utasítás részeként használt feltétel meghatározására. Az if-utasítás végrehajtása előtt a "count" változó az "5" értékkel van ellátva. Az if-statement azt ellenőrzi, hogy a "count" értéke "5". Ha ez a helyzet, az "akkor" és a "fi" kulcsszavak közötti kivonatot végrehajtják, különben az if-utasítás utáni minden állítás végrehajtásra kerül. A "fi" kulcsszó "ha" fordított hátra. A bash szkriptnyelv ezt az egyezményt használja egy összetett kifejezés végére, például egy if-utasításra vagy esettanulmányokra.

A "echo" utasítás kinyomtatja az argumentumot, ebben az esetben a "count" változó értékét a terminál ablakhoz. A kód beoldása az if-utasítás kulcsszavai között javítja az olvashatóságot, de nem szükséges.

Ha van olyan helyzet, amikor egy kódot csak akkor kell végrehajtani, ha egy feltétel nem igaz, a "más" kulcsszó használható egy if-utasításban, ahogyan ez a példa:

count = 5, ha $ count == 5 majd echo "$ count" másként echo "count nem 5" fi

Ha a "$ count == 5" feltétel igaz, a rendszer kiszámolja a "count" változó értékét, ellenkező esetben a "count counting" karakterláncot kinyomtatja.

Ha meg kívánja különböztetni a több feltétel közül, használhatja az "elif" kulcsszót, amely a "máshol" származik, mint a jelen példában:

ha $ count == 5 echo "count is five" elif $ count == 6, akkor echo "count is six" else echo "none of the above" fi

Ha a "számláló" "5", akkor a rendszer "számláló öt" -t nyomtat ki. Ha a "számlálás" nem "5", hanem "6", akkor a rendszer "hat számot" nyomtat. Ha nem "5" vagy "6", akkor a rendszer "a fentiek egyikét sem nyomtatja".

Amint azt feltételezed, számos "elif" záradékkal rendelkezhet. Egy példa több "elif" feltétel esetén:

ha $ count == 5 echo "számláló öt" elif $ count == 6, akkor visszhang "count is six" elif $ count == 7, majd echo "count is seven" elif $ count = = 8 majd echo "count is eight" elif $ count == 9, majd visszhang "count is nine" egyéb echo "none of the above" fi

Az ilyen kimutatások többféle feltétellel történő összeállításának komputeresebb módja az esettanulmány. Hasonlóan működik az if-utasításhoz több "elif" záradékkal, de sokkal tömörebb. Például a fenti kódrész az "eset" utasítással újra megírható az alábbiak szerint:

eset "$ count" az 5-ben) echo "count five" ;; 6) echo "count hat" ;; 7) echo "count 7" ;; 8) echo "count nyolc" ;; 9) echo "count kilenc" ;; *) echo "none of the above" esac

Ha az utasításokat gyakran a for-hurkok vagy a hurkok körében használjuk, mint ezt a példát:

count = 1 kész = 0, miközben $ count -le 9 aludni 1 ((count ++)) ha $ count == 5 majd folytassa fi echo "$ count" kész echo kész

Ön is beágyazott, ha állításokat. A legegyszerűbb beágyazott, ha a nyilatkozat formája: ha … akkor … más … ha … akkor … fi … fi. Az if-statement azonban önkényes összetettséggel beágyazható.

Lásd még a bash parancsfájl argumentumainak átadását, amely bemutatja, hogyan kell használni a feltételeket a parancssorból átadott paraméterek feldolgozásához.

A bash-shell más programozási konstrukciókat biztosít, például for-hurkok, while-hurkok és aritmetikai kifejezések.