RSS

Macam-macam syntax pada Bash Shell

07 Jun

• Input/Output
1. Output dengan printf
Contoh:

#!/bin/bash
#pr1

url=”pemula.linux.or.id”;
angka=32;

printf “Hi, Pake printf ala C\n\t\a di bash\n”;
printf “My url %s\n %d decimal = %o octal\n” $url $angka $angka;
printf “%d decimal dalam float = %.2f\n” $angka $angka

Hasilnya:

[fajar@linux$]./pr1
Hi, Pake printf ala C
di bash
My url pemula.linux.or.id
32 decimal = 40 octal
32 decimal dalam float = 32.00
2. Input dengan read

Setelah echo dan printf untuk proses output telah anda ketahui, sekarang kita menggunakan statement read yang cukup ampuh untuk membaca atau menerima masukan dari input standar
Contohnya:

#!/bin/bash
#rd1

echo -n “Nama anda :”
read nama;

echo “Hi $nama, apa khabarmu”;
echo “Pesan dan kesan :”;
read
echo “kata $nama, $REPLY”;

Hasilnya:

[fajar@linux$]./rd1
Nama anda : pinguin
Hi pinguin, apa khabarmu
Pesan & kesan :
pake linux pasti asyk – asyk aja
kata pinguin, pake linux pasti asyk – asyk aja

• Seleksi
1. If
Statement builtin if berfungsi untuk melakukan seleksi berdasarkan suatu kondisi tertentu
Sintaxnya:
if test-command1;
then
perintah1;
elif test-command2;
then
perintah2;
else
alternatif_perintah;
fi

Contohnya:

#!/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 ...]

2. Case
seperti halnya if statement case digunakan untuk menyeleksi kondisi majemuk, dibanding if, pemakaian case terasa lebih efisien
Sintaxnya:
case WORD in [ [(] PATTERN [| PATTERN]…) COMMAND-LIST ;;]…
esac

Contohnya:
#!/bin/bash

clear
echo -n “Masukkan nama binatang :”;
read binatang;

case $binatang in
pinguin | ayam | burung ) echo “$binatang berkaki 2″
break
;;
onta | kuda | anjing ) echo “$binatang berkaki 4″
break
;;
*) echo “$binatang blom didaftarkan”
break
;;
Esac

Hasilnya:
[fajar@linux$]./cs1
Masukkan nama binatang : pinguin
pinguin berkaki 2

• Perulangan
1. For
Sintax:
for NAME [in WORDS ...]; do perintah; done
Contohnya:
#!/bin/bash

for angka in 1 2 3 4 5;
do
echo “angka=$angka”;
done
Hasilnya:
[fajar@linux$]./for1
angka=1
angka=2
angka=3
angka=4

2. While
selama kondisi bernilai benar atau zero perintah dalam blok while akan diulang terus
Syntaxnya:
while KONDISI; do perintah; done;

Contohnya:
#!/bin/bash

i=1;
while [ $i -le 10 ];
do
echo “$i,”;
let i=$i+2;
done
Hasilnya:
[fajar@linux$]./wh1
1,3,5,7,9,

3. Until
jika while akan mengulang selama kondisi benar, lain halnya dengan statement until yang akan mengulang selama kondisi salah. berikut contoh script ut menggunakan until
Contohnya:
#!/bin/bash

i=1;
until [ $i -gt 10 ];
do
echo $i;
let i=$i+1
done

Hasilnya:
[fajar@linux$]./ut
1,2,3,4,5,6,7,8,9,10,

4. Select
select berguna untuk pembuatan layout berbentuk menu pilihan, anda lihat contoh script pembuatan menu diatas kita hanya melakukannya dengan echo secara satu persatu, dengan select akan terlihat lebih efisien.
Syntaxnya:
select varname in (&ltitem list>); do perintah; done

Contohnya:
#!/bin/bash
#menu1

clear
select menu
do
echo “Anda memilih $REPLY yaitu $menu”
done

Hasiilnya:
layout:
[fajar@linux$]./menu1 Slackware Redhat Mandrake
1) Slackware
2) Redhat
3) Mandrake
#? 1
Anda memilih 1 yaitu Slackware

• Array
adalah kumpulan variabel dengan tipe sejenis, dimana array ini merupakan feature Bash yang cukup indah dan salah satu hal yang cukup penting dalam bahasa pemrograman, anda bisa membayangkan array ini sebagai tumpukan buku – buku dimeja belajar. lebih jelasnya sebaiknya lihat dulu

contoh script berikut:
#!/bin/bash
#array1

buah=(Melon,Apel,Durian);
echo ${buah[*]};

About these ads
 
Tinggalkan komentar

Ditulis oleh pada Juni 7, 2010 in categorized

 

Berikan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

 
Ikuti

Get every new post delivered to your Inbox.

%d blogger menyukai ini: