Академический Документы
Профессиональный Документы
Культура Документы
3
PRAKTIKUM SISTEM OPERASI
”SELEKSI, PERULANGAN, DAN ARRAY PADA
SHELL PROGRAMMING LINUX”
Assisten Dosen :
NAMA : G.A.Vida Mastrika Giri
NIM : 0808605056
Nama Dosen :
I Gusti Ngurah Anom Cahyadi Putra, S.T, M.Cs
Puji Syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa, karena
berkat rahmat Nya lah laporan Praktikum Sistem Operasi dapat selesai tepat
pada waktunya. Penulis menyadari bahwa laporan ini jauh dari sempurna. Se-
hingga perlu pembelajaran yang lebih mendalam lagi bagi penulis, baik dalam
hal materi perkuliahan maupun dalam suatu bentuk penulisan laporan. Tidak
lupa penulis mengucapkan terima kasih kepada semua pihak yang membantu
penulis dalam penyelesaian laporan ini.
penulis
1
Daftar Isi
1 Pendahuluan 4
1.1 Latar Belakang . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Tujuan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Manfaat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 LANDASAN TEORI 6
2.1 Seleksi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.1 Statement If . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.2 Statement Builtin case . . . . . . . . . . . . . . . . . . . 7
2.2 Perulangan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.1 Statement For . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.2 Statement While . . . . . . . . . . . . . . . . . . . . . . 8
2.2.3 Statement Until . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.4 Statement Select . . . . . . . . . . . . . . . . . . . . . . 10
2.3 Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3 HASIL PRAKTIKUM 12
3.1 Ulasan Praktikum Lalu . . . . . . . . . . . . . . . . . . . . . . . 12
3.2 Soal Tugas Praktikum . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.1 Jawaban Soal 1 . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.2 Jawaban Soal 2 . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.3 Jawaban Soal 3 . . . . . . . . . . . . . . . . . . . . . . . 23
4 PENUTUP 25
4.1 Kesimpulan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2 Saran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5 DAFTAR PUSTAKA 27
2
Daftar Gambar
3
Bab 1
Pendahuluan
• Bourne shell(sh),
• C shell(csh),
• Korn shell(ksh),
• dsb.
4
untuk dokumentasi ini shell yang digunakan adalah bash shell dari GNU, yang
merupakan pengembangan dari Bourne shell dan mengambil beberapa feature
(keistimewaan) dari C shell serta Korn shell, Bash shell merupakan shell yang
cukup banyak digunakan pemakai linux karena kemudahan serta banyaknya
fasilitas perintah yang disediakan.
Khusus pada pembahasan kali ini, penulis hanya akan membahas men-
genai seleksi, perulangan dan array.
1.2 Tujuan
Adapun tujuan dari laporan ini adalah untuk memperkenalkan dasar pem-
rograman shell, dalam hal ini adalah mengenai perintah seleksi, perulangan,
dan array
1.3 Manfaat
Manfaat yang dapat diperoleh dari laporan ini adalah :
5
Bab 2
LANDASAN TEORI
2.1 Seleksi
2.1.1 Statement If
syntax:
if test-command1;
then
perintah1;
elif test-command2;
then
perintah2;
else
alternatif_perintah;
fi
1. Contoh Script If
#!/bin/bash
kunci="bash";
read -s -p "Password anda : " pass
if [ $pass==$kunci ]; then
echo "Sukses, anda layak dapat linux"
else
6
echo "Wah sorry, gagal nih";
fi
#!/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"
7
break
;;
esac
2.2 Perulangan
#!/bin/bash
for angka in 1 2 3 4 5;
do
echo "angka=$angka";
done
8
1. contoh script whi1e mencetak bilangan ganjil antara 1-10
#!/bin/bash
i=1;
while [ $i -le 10 ];
do
echo "$i,";
let i=$i+2;
done
#!/bin/bash
i=1;
until [ $i -gt 10 ];
do
echo $i;
let i=$i+1
done
9
2.2.4 Statement 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.
Syntax:
Sewaktu dijalankan bash akan menampilkan daftar menu yang diambil dari
item list, serta akan menampilkan prompt yang menunggu masukan dari key-
board, masukan tersebut oleh bash disimpan di variabel builtin REPLY, apa-
bila daftar item list tidak dituliskan maka bash akan mengambil item list dari
parameter posisi sewaktu script dijalankan. lebih jelasnya lihat contoh berikut:
#!/bin/bash
#menu1
clear
select menu
do
echo "Anda memilih $REPLY yaitu $menu"
done
Hasilnya :
Layout:
menu1 Slackware Redhat Mandrake
1) Slackware
2) Redhat
3) Mandrake
? 1
Anda memilih 1 yaitu Slackware
2.3 Array
Array adalah kumpulan variabel dengan tipe sejenis, dimana array ini meru-
pakan feature Bash yang cukup indah dan salah satu hal yang cukup pent-
ing dalam bahasa pemrograman, anda bisa membayangkan array ini sebagai
10
tumpukan buku - buku dimeja belajar. lebih jelasnya sebaiknya lihat dulu
contoh script berikut:
#!/bin/bash
#array1
buah=(Melon,Apel,Durian);
echo ${buah[*]};
Hasil scriptnya :
./array1.
Melon,Apel,Durian
Anda lihat bahwa membuat tipe array di Bash begitu mudah, secara otomatis
array buah diciptakan dan string Melon menempati index pertama dari array
buah, perlu diketahui bahwa array di Bash dimulai dari index 0, jadi array
buah mempunyai struktur seperti berikut:
11
Bab 3
HASIL PRAKTIKUM
1. #!/bin/bash
echo -n "masukkan bilangan :"
read bil
if [ $bil -gt 0 ]
then
echo "bilangan $bil adalah bilangan positif";
elif [ $bil -eq 0 ]
then
echo "bilangan $bil adalah bilangan netral";
else
echo "bilangan $bil adalah bilangan negatif";
fi;
2. #!/bin/bash
echo -n "masukkan nama seekor binatang :"
read BINATANG
12
echo -n "binatang $BINATANG memiliki :"
case $BINATANG in
kuda | anjing | kucing)
echo -n "empat"
;;
ayam | burung)
echo -n "dua"
;;
*)
echo -n "tidak diketahui jumlah"
;;
esac
echo " kaki"
3. #!/bin/bash
select fname in "Ayam Goreng" "Ayam Bakar" "Opor Ayam" "exit"
do
case $REPLY in
1)echo "Ayo makan nasi dengan ayam goreng spesial"
break;
;;
2)echo "Ayo makan nasi dengan ayam bakar spesial"
break;
;;
3)echo "Ayo makan nasi dengan ayam opor spesial"
break;
;;
4)echo "terimakasih"
break;
;;
esac
done
4. #!/bin/bash
13
for angka in 1 2 3 4 5;
do
echo "angka=$angka"
done
5. #!/bin/bash
i=1;
while [ $i -le 10 ];
do
echo "$i"
let i=$i+2;
done
6. #!/bin/bash
i=1;
until [ $i -gt 10 ];
do
echo "$i"
let i=$i+1;
done
7. #!/bin/bash
i=1;
array=()
do
read -p "inputkan bilangan [$i] " array[$i];
let i=$i+1;
done
14
i=1;
echo "anggota array yang sudah diinputkan "
while [ $i -le $jum ];
do
echo "index[$i]=${array[$i]}";
let i=$i+1;
done
1. jawaban soal 1
15
2. jawaban soal 2
3. jawaban soal 3
16
4. jawaban soal 4
17
5. jawaban soal 5
6. jawaban soal 6
18
7. jawaban soal 7
Contoh script.
19
#!/bin/bash
esac
done
20
Gambar 3.8: Contoh statement select
#!/bin/bash
i=1;
let batasbaru=batas*2;
while [ $i -le $batasbaru ];
do
echo "$i,";
let i=$i+2;
done
21
Gambar 3.9: Tampilan deret bil.ganjil
#!/bin/bash
i=2;
let batasbaru=batas*2;
while [ $i -le $batasbaru ];
do
echo "$i,";
let i=$i+2;
done
22
Gambar 3.10: Tampilan deret bil.genap
#!/bin/bash
bulan[1]=31
bulan[2]=28
bulan[3]=31
bulan[4]=30
bulan[5]=31
bulan[6]=30
bulan[7]=31
bulan[8]=31
23
bulan[9]=30
bulan[10]=31
bulan[11]=30
bulan[12]=31
hari=${bulan[bulan]};
echo "Banyak hari dalam bulan $bulan adalah $hari hari"
24
Bab 4
PENUTUP
4.1 Kesimpulan
Shell adalah program penerjemah perintah yang dijembatani user dengan
sistem operasi. Pada umumnya shell menyediakan prompt sebagai user in-
terface, tempat dimana user mengetikkan perintah-perintah yang diinginkan,
baik perintah internal shell ataupun perintah eksternal shell untuk mengek-
sekusi suatu file program. Di samping itu, shell memungkinkan user menyusun
sekumpulan perintah pada sebuah atau beberapa file dengan menggunakan ed-
itor teks, untuk dieksekusi seperti layaknya sebuah program.
Terdapat macam-macam perintah pada pemrograman shell. Beberapa
diantaranya adalah seleksi, perulangan, dan array. Masing-masing diantaranya
memiliki statement yang berbeda untuk menjalankan perintah.
Pada seleksi terdapat statement if dan builtin case yang bertujuan untuk
menyeleksi kondisi majemuk. Pada perulangan terdapat beberapa statement
yaitu For, While, Until, Select yang bertujuan untuk melakukan perulangan
atau looping pada pemrograman. Sedangkan 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.
25
4.2 Saran
Shell merupakan salah satu kekuatan yang membuat sistem Linux men-
jadi powerful, bertenaga, dan dapat diandalkan untuk segala macam aktifitas
komputasi. Shell inilah yang menjadi salah satu tulang punggung jalannya
sistem-sistem yang ada pada Linux.
Terdapat banyak statement-statement pada pemrograman shell yang masi
harus dipelajari lebih banyak guna membuat suatu program serta dapat mengem-
bangkan dan membudayakan open source di komunitas pelajar.
26
Bab 5
DAFTAR PUSTAKA
27