Struktur Dasar Bash Script: if, else, dan elif
Kuy Belajar Bash Script!
Di dunia scripting, sering banget kita harus ngeganti alur eksekusi kode kayak ngecek kondisi. Nah, di Bash, kita punya if, else, dan elif buat ngatur semua ini. Yuk, kita bahas tuntas!
1. Struktur if Dasar
Pertama, kita mulai dari yang paling sederhana dulu: if.
if [ kondisi ]
then
# Kode yang dieksekusi jika kondisi benar
fi
Contoh:
if [ -f "file.txt" ]
then
echo "File file.txt ada nih!"
fi
Penjelasan:
[ -f "file.txt" ]: Cek apakah file bernamafile.txtada.then: Awali blok yang mau dieksekusi kalau kondisitrue.fi: Akhiri blokif.
2. Struktur if dengan else
Gimana kalau if nggak terpenuhi? Nah, kita bisa masuk ke else!
if [ kondisi ]
then
# Kode yang dieksekusi jika kondisi benar
else
# Kode yang dieksekusi jika kondisi salah
fi
Contoh:
if [ -f "file.txt" ]
then
echo "File file.txt ada nih!"
else
echo "File file.txt gak ada, bro!"
fi
Penjelasan:
- Sama seperti
ifsebelumnya, tapi kalo kondisinyafalse, eksekusi kode di bagianelse.
3. Struktur if dengan elif
Terdadinya kita pengen ngecek beberapa kondisi berturut-turut sebelum akhirnya keluar. Nah, ini dia gunanya elif (singkatan dari else if).
if [ kondisi1 ]
then
# Kode yang dieksekusi jika kondisi1 benar
elif [ kondisi2 ]
then
# Kode yang dieksekusi jika kondisi2 benar
else
# Kode yang dieksekusi jika semua kondisi salah
fi
Contoh:
if [ -f "file.txt" ]
then
echo "File file.txt ada nih!"
elif [ -f "file2.txt" ]
then
echo "File file2.txt ada, tapi file.txt gak ada!"
else
echo "Gak ada sama sekali filenya, gan :("
fi
Penjelasan:
- Cek
kondisi1dulu. - Kalo salah, loncat ke
elif(else if), cekkondisi2. - Kalo masih salah juga, eksekusi
else.
4. Operator dalam Kondisi
Biar kondisinya lebih beragam, kita bisa pake operator dalam [ ] (alias test):
-
Banding Numerik
-eq: sama dengan (==)-ne: nggak sama dengan (!=)-gt: lebih besar (>)-lt: lebih kecil (<)-ge: lebih besar atau sama dengan (>=)-le: lebih kecil atau sama dengan (<=)
Contoh:
if [ 10 -gt 5 ] then echo "10 lebih besar dari 5" fi -
Operator String
=: string sama!=: string beda-z: string kosong (panjang 0)-n: string tidak kosong (panjang bukan 0)
Contoh:
if [ "$str1" = "hello" ] then echo "Stringnya sama!" fi -
Operator File
-f: cek apakah file biasa ada-d: cek apakah direktori ada-e: cek apakah file (biasa atau direktori) ada-r: cek apakah file readable-w: cek apakah file writable-x: cek apakah file executable
Contoh:
if [ -d "mydir" ] then echo "Direktori mydir ada!" fi
5. Tips Biar Lancar:
- Ketik spasi dengan benar di dalam
[ ]: harus ada space setelah[dan sebelum]. - Pake
"buat variabel string, biar aman kalau isinya kosong/ada spasi. - Bisa pake
[[ ]]juga (eksklusif di Bash, lebih modern dan robust) biar support lebih banyak operator keren kayak&&,||.
Contoh [[ ]]:
if [[ 10 > 5 && -f "file.txt" ]]
then
echo "10 > 5 dan file.txt ada!"
fi
Jadi gitu guys, struktur if, else, dan elif di Bash. Jangan lupa banyak latihan biar makin jago! Kalo ada error, cek dulu spasi dan syntax kondisinya ya. Selamat coding!