Carane Tulis IF-Statements ing Bash-Script

Perintah, Sintaks, lan Conto

Kanthi if-statement, sing minangka jinis statement bersyarat, sampeyan bisa nindakake tumindak beda-beda gumantung saka kondisi kasebut. Iku efektif menehi sistem kemampuan kanggo nggawe pancasan.

Conto wangun paling gampang yen statement kasebut:

count = 5 yen [$ count == 5] banjur echo "$ count" fi

Ing conto iki, variabel "count" digunakake kanggo nemtokake sawijining kondisi sing digunakake minangka bagean yen statement kasebut. Sadurunge if-statement dieksekusi, variabel "count" ditugasake angka "5". Yen-statement banjur ngetung apa nilai "count" yaiku "5". Yen kuwi, pernyataan ing antarane tembung kunci "banjur" lan "fi" dieksekusi, yen ana pernyataan ing ngisor yen statement kasebut dieksekusi. Tembung "fi" yaiku "yen" diejo. Basa skrip bash nggunakake konvènsi iki minangka tandha pungkasan saka ekspresi rumit, kayata if-statement utawa statement-case.

Pernyataan "gema" nyetak argumen, ing kasus iki, nilai variabel "count", menyang jendela terminal. Indikasi saka kode antarane tembung kunci yen statement kasebut mbiyantu bisa dibaca nanging ora perlu.

Yen sampeyan duwe kahanan ing ngendi sawijine kode kudu dieksekusi mung yen kondisi ora bener, sampeyan bisa nggunakake tembung "liya" ing if-statement, kaya ing conto iki:

count = 5 if [$ count == 5] banjur echo "$ count" else echo "count not 5" fi

Yen kondisi "$ count == 5" bener, sistem bakal nyithak nilai "variabel" variabel, yen ora ana "senar 5".

Yen sampeyan pengin mbedakake antarane pirang-pirang kahanan, sampeyan bisa nggunakake tembung "elif", sing asal saka "liya yen", kaya ing conto iki:

yen [$ count == 5] banjur echo "count is five" elif [$ count == 6] banjur echo "count is six" liya echo "ora ana ing ndhuwur" fi

Yen "count" yaiku "5", sistem kasebut minangka "count is five". Yen "count" ora "5" nanging "6", sistem prints "count is six". Yen ora "5" utawa "6", sistem bakal "ora ana ing ndhuwur".

Sing bisa ditemtokake, sampeyan bisa duwe klausa "elif". Conto karo macem-macem "elif" kondisi bakal:

yen [$ count == 5] banjur echo "count is five" elif [$ count == 6] banjur echo "count is six" elif [$ count == 7] banjur echo "count is seven" = 8] banjur echo "count is eight" elif [$ count == 9] banjur echo "count is nine" liya echo "none of the above" fi

Cara sing luwih kompak kanggo nulis statement kasebut kanthi cara akeh yaiku cara cilik. Fungsi kasebut mirip karo if-statement karo macem-macem "elif" klausa nanging luwih ringkes. Contone, potongan kode kasebut ing ndhuwur bisa ditulis maneh kanthi statement "cilik" kaya mangkene:

cilik "$ count" ing 5) echo "count is five" ;; 6) echo "count is six" ;; 7) echo "count is seven" ;; 8) echo "count is eight" ;; 9) echo "count is nine" ;; *) Echo "ora ana ing ndhuwur" esac

Yen statement kasebut kerep digunakake ing njero for-loops utawa while-loops kaya ing conto iki:

count = 1 rampung = 0 nalika [$ count -le 9] ngantuk 1 ((count ++)) yen [$ count == 5] banjur terusake telpon kanthi "$ count"

Sampeyan uga bisa nested yen statements. Paling gampang ketik yen pernyataan ana ing wangun: yen ... banjur ... liya ... yen ... banjur ... fi ... fi. Nanging, yen-statement bisa nested karo kerumitan kanthi sewenang-wenang.

Deleng uga carane ngliwati argumèn menyang skrip bash , sing nuduhaké cara migunakaké kondhisi kanggo ngolah parameter sing liwati saka baris perintah.

Cangkang bash menehi pamrograman liyane, kayata for-loops , while-loops , lan ekspresi aritmetik .