Saya kembali ![]()
Kali ini saya akan membahas tentang Shell Flow Control, dan secara spesifik saya pilih dengan menggunakan command case dan function.
OK then, mari kita mulai..
Sebenarnya, apa sih function itu?
Function adalah satu atau beberapa perintah (command) yang memiliki satu fungsi tujuan. Hmm… bingung ya? Intinya siy, function itu meringkas beberapa baris command dan menyimpannya dalam satu tempat dan sewaktu-waktu dapat dipanggil tanpa menuliskan keseluruhan scriptnya, tapi cukup memanggil nama function tsb.
Pola penulisan function adalah sbb :
function_name()
{
script listing;
}
Lalu, case itu apa?
Command Case memungkinkan kita untuk melakukan sejumlah tindakan yang berbeda terhadap sejumlah kemungkinan nilai.
Command Case hanya akan mengerjakan satu perintah yang dipilih dari daftar perintah yang disediakan.
Pola penulisan command case adalah sbb :
case variable_pilihan
pilihan1)command1;;
…
…
pilihann)commandn;;
esac
Setiap akhir dari command case selalu ditutup dengan esac (kebalikan case). Dan setiap akhir dari command dari setiap pilihan ditutup dengan ‘;;’ (dua titik koma)
Lalu, bagaimana menggabungkan antara command case dan function yang sudah kita buat?
Langsung saja kita coba contoh script berikut ini :
Dalam script tsb digunakan 4 buah function, yaitu: proc_tambah, proc_kurang, proc_kali dan proc_bagi. Dan dalam command case disediakan 6 buah pilihan perintah yang memiliki nilai berbeda, dan nilai pilihan kita simpan dalam variable $pil. Nilai bilangan pertama dan kedua merupakan nilai yang diinputkan sendiri kemudian disimpan/dibaca sebagai sebuah variabel.
Berikut hasil running script contoh jika kita memilih pilihan ‘all’ :
Jadi gimana? Mudah sekali bukan?
Sebenarnya penggunaan function akan lebih maksimal jika ia digunakan berkali-kali dalam suatu command pilihan. Kalo hanya satu baris dan satu kali pakai saja ya mending langsung dituliskan dalam command case.
Be wise untuk menentukan pilihanmu
Baiklah… cukup sekian untuk kali ini, dan sampai jumpa dalam tips/materi berikutnya.
Ciao…
Popularity: 45% [?]


- SHELILA -


