Statement if
Statement builtinif
berfungsi untuk melakukan seleksi berdasarkan suatu kondisi tertentusyntax:
if test-command1;
then
perintah1;
elif test-command2;
then
perintah2;
else
alternatif_perintah;
fi
#!/bin/bash
#if1
clear;
if [ $# -lt 1 ];
then
echo "Usage : $0 [arg1 arg2 ...]"
exit 1;
fi
echo "Nama script anda : $0";
echo "Banyak argumen : $#";
echo "Argumennya adalah: $*";
Hasilnya:
[fajar@linux$]./if1
Usage : ./if1 [arg1 arg2 ...]
if...fi
akan dieksekusi apabila kondisi if
terpenuhi, dalam hal ini jika script if1 dijalankan tanpa argumen. kita tinggal membaca apakah variabel $#
lebih kecil (less than) dari 1, jika ya maka eksekusi perintah di dalam blok if ..fi
tsb. perintah exit 1
akan mengakhiri jalannya script, angka 1
pada exit adalah status yang menandakan terdapat kesalahan, status 0 berarti sukses, anda dapat melihat isi variabel $?
yang menyimpan nilai status exit, tetapi jika anda memasukkan satu atau lebih argumen maka blok if...fi
tidak akan dieksekusi, statement diluar blok if..fi
lah yang akan dieksekusi.contoh script if2:
#!/bin/bash
kunci="bash";
read -s -p "Password anda : " pass
if [ $pass==$kunci ]; then
echo "Sukses, anda layak dapat linux"
else
echo "Wah sorry, gagal nih";
fi
[fajar@linux$]./if2
Password anda : bash
Sukses, anda layak dapat linux
[fajar@linux$]./if2
Password anda : Bash
Wah sorry, gagal nih
else
akan dieksekusi jika if
tidak terpenuhi, sebaliknya jika if
terpenuhi maka else
tidak akan dieksekusicontoh script if3: penyeleksian dengan kondisi majemuk
#!/bin/bash
clear
echo "MENU HARI INI";
echo "-------------";
echo "1. Bakso ";
echo "2. Gado-Gado ";
echo "3. Exit ";
read -p "Pilihan anda [1-3] :" pil;
if [ $pil -eq 1 ];
then
echo "Banyak mangkuk =";
read jum
let bayar=jum*1500;
elif [ $angka -eq 2 ];
then
echo "Banyak porsi =";
read jum
let bayar=jum*2000;
elif [ $angka -eq 3 ];
then
exit 0
else
echo "Sorry, tidak tersedia"
exit 1
fi
echo "Harga bayar = Rp. $bayar"
echo "THX"
[fajar@linux$]./if3
MENU HARI INI
-------------
1. Bakso
2. Gado-Gado
3. Exit
Pilihan anda :2
Banyak porsi = 2
Harga bayar = Rp. 4000
THX
statement for
syntax:for NAME [in WORDS ...]; do perintah; done
#!/bin/bash
for angka in 1 2 3 4 5;
do
echo "angka=$angka";
done
[fajar@linux$]./for1
angka=1
angka=2
angka=3
angka=4
angka=5
#!/bin/bash
for var
do
echo $var
done
[fajar@linux$]./for2 satu 2 tiga
satu
2
tiga
#!/bin/bash
for var in `cat /etc/passwd`
do
echo $var
done
0 comments:
Post a Comment