Anda di halaman 1dari 9

0

Laporan Praktikum Modul 9


Sistem Operasi

Disusun oleh :
Nama : Tulus Wahyuno
NIM : M3114140
Kelas : TI-c

Universitas Sebelas Maret Surakarta


Jl.Ir.Sutami 36 A, Kentingan, Jebres, Surakarta
1

Laporan Praktikum Sistem Operasi Modul 9

PERCOBAAN 8 :
Instruksi Test
1. Test digunakan untuk memeriksa kondisi dari sebuah ekspresi. Hasil test akan memberikan status
exit 0 bila sesuai, atau tidak sama dengan 0 jika tidak sesuai. Pada percobaan dibawah, test
memeriksa variabel NAMA apakah stringnya sama dengan “tulus” atau tidak. Setelah ditampilkan
$?, status exit adalah 0 artinya $NAMA sama dengan “tulus”. Pada percobaan kedua, $NAMA
tidak sama dengan “tulus”.

2. Jika test diaplikasikan dengan konstruksi if, test berada setelah if diikuti nama variabel dalam
apostrof dan nilai yang dibutuhkan untuk memenuhi kondisi if. Notasi test untuk if dapat ditulis
dengan “if test ….” Atau “if [ … ]”.

PERCOBAAN 9 :
Notasi && dan ||
1. Jika file prog01.sh ada (TRUE), maka program berikutnya akan dijalankan. File prog01.sh ada,
karena itu status exit adalah TRUE, hasil operasi AND masih tergantung pada hasil eksekusi
instruksi kedua, dengan demikian instruksi echo akan dijalankan.

2. File prog99.sh tidak ada, maka status exit adalah FALSE dan instruksi echo tidak dijalankan.

3. Jika prog01.sh ada, maka program berikutnya akan dijalankan. File prog01.sh ada, karena itu
status exit adalah TRUE, dan karena sudah TRUE instruksi echo tidak dijalankan. Sebaliknya jika
status exit adalah FALSE, instruksi echo akan dijalankan.
2

PERCOBAAN 10 :
Operator bilangan bulat untuk test
1. Test dapat digunakan untuk membandingkan bilangan bulat dengan bantuan –eq. jika status exit
bernilai 0 maka variabel yang dibandingkan bernilai benar.

PERCOBAAN 11 :
Operator Logical dan konstruksi elif
1. Operator logical yang digunakan adalah –ge yaitu “lebih besar dan sama dengan”, -le “lebih kecil
dan sama dengan”, dan gt “lebih besar”.

PERCOBAAN 12 :
Hitungan Aritmetika
1. Untuk melakukan perhitungan aritmetika pada linux digunakan utilitas “expr”. Utilitas ini harus
ditulis di depan sebelum perhitungan dinotasikan. Penulisan harus memperhatikan spasi antara
dan untuk perkalian digunakan \*.
3

2. Perhitungan menggunakan “expr” juga dapat dijadikan sebagai nilai dari sebuah variabel dengan
notasi menggunakan back quote.

PERCOBAAN 13 :
Instruksi Exit
1. Instruksi exit adalah instruksi yang digunakan untuk keluar dari sebuah program atau terminal
dengan memberikan nilai exit pada program tersebut. Jika program tersebut dieksekusi, langsung
keluar terminal.

PERCOBAAN 14 :
Konstruksi Case Esac
1. Case esac digunakan untuk membuat kondisi dari sebuah nilai, dalam percobaan ini adalah nilai
input. Case esac akan membuat kondisi yang berbeda dengan instruksi yang berbeda dari instruksi
yang ada pada kondisi lain jika salah satu kondisi terpenuhi. Case ditulis di awal diikuti nama
variabel kemudian in. setelah in, kondisi mulai dinotasikan dengan instruksi-instruksi di dalamnya
dan setiap kondisi diakhiri dengan dua titik koma. Setiap berakhirnya case selalu ditutup dengan
esac.
4

2. Terdapat bentuk lain dari case esac. Perbedaan ada pada cara penulisan. Dalam percobaan ini
digunakan untuk menyamakan antara karakter “y” dan “Y” pada input ya atau tidak.

PERCOBAAN 15 :
For Do Done
1. Konstruksi ini digunakan sebagai perulangan. Dinotasikan dengan for pada awal baris diikuti nama
variabel kemudian in diikuti nilai variabel. Do akan melakukan apa yang akan diulang sebanyak
nilai yang disediakan. Setelah selesai mealkukan perulangan akan ditutup oleh done.

2. For do done juga dapat digunakan untuk menampilkan daftar atau seluruh isi sebuah direktori
atau hanya file-file berekstensi tertentu. Output pertama jika tidak meanmpilkan F yang
berekstensi .lst, output kedua jika menampilkan F berekstensi .lst. pada output kedua terdapat
error karena dalam folder yang dimaksud tidak ada file yang berekstensi .lst.
5

PERCOBAAN 16 :
While Do Done
1. While do done mirip dengan if. Konstruksi ini memberikan sebuah kondisi yang bernilai TRUE
kemudian do akan mengeksekusi instruksi di dalamnya kemudian diakhiri done.

PERCOBAAN 17 :
Instruksi Dummy
1. Instruksi ini tidak melakukan apa-apa, namun memberikan status exit 0 (TRUE).

PERCOBAAN 18 :
Fungsi
1. Fungsi adalah program yang dipanggil oleh program lainnya dengan notasi NamaFungsi(). Fungsi
memberikan status exit $? Yang dinyatakan dengan return nr, atau nilai 0 sebagai default.
Membuat fungsi diawali dengan nama fungsi, parameter kemudian blok program yang dinyatakan
dalam { … }.
6

LATIHAN 1 :
salin.sh

$1 dan $2 adalah parameter yang akan menjadi file asal dan file tujuan. Kondisi if menunjukkan bila jumlah
parameter kurang dari dua maka akan ditampilkan “Salin gagal”. Jika kondisi tersebut tidak terpenuhi
maka akan berganti baris selanjutnya dengan kondisi elif parameter kedua adalah direktori maka akan
dimunculkan pesan “File tidak bisa dicopy!”. Jika kondisi belum terpenuhi, akan dialihkan ke kondisi
berikutnya yaitu jika parameter kedua ada dan file biasa maka akan dimunculkan pesan dan pertanyaan
apakah akan dicopy atau tidak, jika iya tekan “y”. jika kondisi tersebut belum terpenuhi akan berganti ke
kondisi else dimana parameter satu dan parameter kedua atau file kedua belum ada. File parameter satu/
file asal akan dicopy ke parameter/ file tujuan.

LATIHAN 2

Kondisi if akan memeriksa apakah jumlah parameter kurang dari satu atau tidak. Jika kondisi terebut
benar, maka akan dimunculkan pesan “Error!, usage: checkdir.sh DirectoryName”. Jika kondisi tersebut
7

bernilai false, maka else akan dieksekusi. Instruksi yang ada di dalam else adalah jika parameter adalah
direktori, akan di eksekusi instruksi “ls –ld”.

LATIHAN 3

Pertama adalah memasukkan jumlah gaji dalam juta. Input akan disimpan dalam variabel gaji. Jika gaji
kurang dari dan sama dengan 10000000, akan dilakukan perhitungan dengan mengalikan gaji dengan hasil
bagi 50 dan 100 yang artinya 50 %. Jika gaji kurang dari dan sama dengan 35000000, gaji akan dikenai pph
15 % dari 10 juta dan 25 % dari sisanya. Variabel satu untuk menghitung pph 15 % dari gaji 10 juta, variabel
dua akan menghitung selisih gaji dengan 10 juta, variabel tiga akan menghitung hasil dari variabel dua
dikali dengan 25 %. Variabel empat akan menghitung jumlah pph 15 % dengan pph 25 %. Jika gaji lebih
dari 35000000, akan dikenai pph 15 % dari 10 juta gaji, 25 % dari 25 juta gaji, dan 35 % dari sisa gaji
dikurangi 35 juta. Perhitungan sama dengan kondisi elif, hanya ditambah menghitung sisa gaji yang
dikurangi 35 juta kemudian dikali 35 %. Setelah itu pph 10 %, 25 % dan 35 % dijumlahkan.

LATIHAN 4
8

Program ini digunakan untuk menampilkan string jika parameter yang diinputkan sama dengan kondisi.
Kondisi dideklarasikan menggunakan case esac. Kondisi-kondisi tersebut adalah start, stop, restart,
reload, status dan jika string yang diinputkan bukan dari kelima kondisi tadi, akan dimunculkan pesan
error. Karena program diinputkan menggunakan parameter, nilai string dalam kondisi dapat menjadi
ambigu antara parameter atau perintah. Seperti yang diketahui, kelima string tadi adalah syntax-syntax
yang digunakan di terminal linux.

LATIHAN 5

Confirm.sh adalah sebuah fungsi yang akan dipanggil oleh program lain yaitu testp.sh. Akan diinputkan
karakter yang sesuai dengan kondisi pada case esac. Jika inputan berhubungan dengan kata “YES”, nilai
balik adalah 0, jika “NO, nilai balik adalah 2.

Program tersebut adalah tetsp.sh dimana if akan memberikan sebuah kondisi melalui parameter $?. Jika
$? Sama dengan 0, maka akan ditampilkan “Jawaban YES”, jika 1 ditampilkan “Jawaban NO”, jika tidak
sama dengan 0 atau 1 akan ditampilkan “Jawaban CONTINUE”. Jika program confirm.sh dijalankan,
program hanya akan menampilkan antara nilai balik 0 dan 1 karena nilai tersebut ada.

Anda mungkin juga menyukai