Dalam postingan kali ini saya akan menulis sebuah program transaksi di sebuah "Rental DVD" , Aplikasi ini mempunyai fungsi perhitungan logika yang menghasilkan struk dari hasil
transaksi. Mungkin teman-teman di suruh dosen menbuat sebuah program
sederhana kira-kira ini bisa jadi panduan Anda. Apl ikasi ini saya buat
ketika saya mendapatkan tugas dari dosen pada mata kuliah praktikum
Pemrograman shell . Aplikasi sederhana ini yang saya buat mengggunakan
pemrograman shell pada linux, tentu saja untuk menjalankanya harus
melalui terminal (shell) pada sistem operasi linux bisa untuk
semua versi linux. Mungkin dari temen2 ada yang ingin belajar membuat
program pada shell dan aplikasi sederhana ini cocok untuk pemula yang
bisa temen2 kembangkan sendiri.
Kode aplikasi ini menggunakan pemrograman shell:
Kode aplikasi ini menggunakan pemrograman shell:
Untuk lebih jelasnya langsung saja dicoba degan mengikuti step-step berikut:
simpan dengan nama file "dvd.sh" (tanpa tanda petik) >> nano dvd.sh >>copy/paste kode di bawah >> Tenkan Crt+X>>Tekan Y (simpan) N (gagal/batal)
clear
echo "--> Autentikasi Member Penyewaaan DVD <--"
read -p "Nama : " member
#member="yoyoy yeyes"
read -s -p "Password : " my_password
if test "$my_password" == "yantow" #teks merah adalah password untuk login dan Anda Boleh ganti
then
. dvdpesan.sh
tput cup 5 30
for (( i=1; i <= 20; i++ ))
do
if [ $i -eq 1 ];then
echo -n "W"
elif [ $i -eq 3 ]
then
echo -n "E"
elif [ $i -eq 5 ]
then
echo -n "L"
elif [ $i -eq 7 ]
then
echo -n "C"
elif [ $i -eq 9 ]
then
echo -n "O"
elif [ $i -eq 11 ]
then
echo -n "M"
elif [ $i -eq 13 ]
then
echo -n "E"
else
echo -n "."
fi
sleep 0.08
done
while :
do
clear
echo " Hai, $member "
echo "++++++++++++++++++++++++++++++++++++++++++++++++"
echo "|| http://yantow-chow.blogspot.com ||"
echo "|| Selamat Datang di ||"
echo "|| Penyewaan DVD Kicy ||"
echo "|| By:Koko Yanto simamora ||"
echo "+++++++++++++++++++++++++++++++++++++++++++++++"
echo ""
echo "1. List Film Baru "
echo ""
echo "2. List Film Hits "
echo ""
echo "3. List Film Anime "
echo ""
echo "4. Ketentuan Harga "
echo ""
echo "5. History Peminjaman "
echo ""
echo "6. Credits "
echo ""
echo "7. Exit "
read -p "Pilihan Anda [1-7] : " pil
if [ $pil -eq 1 ]
then
baru
elif [ $pil -eq 2 ]
then
hits
elif [ $pil -eq 3 ]
then
anime
elif [ $pil -eq 4 ]
then
harga
elif [ $pil -eq 5 ]
then
histori
elif [ $pil -eq 6 ]
then
credits
elif [ $pil -eq 7 ]
then
clear
exit
else
echo "Anda belum memasukan pilihan..."
fi
read -p "Tekan enter untuk Melihat list / Menyewa DVD kembali" readEnterKey
done
fi
echo "--> Autentikasi Member Penyewaaan DVD <--"
read -p "Nama : " member
#member="yoyoy yeyes"
read -s -p "Password : " my_password
if test "$my_password" == "yantow" #teks merah adalah password untuk login dan Anda Boleh ganti
then
. dvdpesan.sh
tput cup 5 30
for (( i=1; i <= 20; i++ ))
do
if [ $i -eq 1 ];then
echo -n "W"
elif [ $i -eq 3 ]
then
echo -n "E"
elif [ $i -eq 5 ]
then
echo -n "L"
elif [ $i -eq 7 ]
then
echo -n "C"
elif [ $i -eq 9 ]
then
echo -n "O"
elif [ $i -eq 11 ]
then
echo -n "M"
elif [ $i -eq 13 ]
then
echo -n "E"
else
echo -n "."
fi
sleep 0.08
done
while :
do
clear
echo " Hai, $member "
echo "++++++++++++++++++++++++++++++++++++++++++++++++"
echo "|| http://yantow-chow.blogspot.com ||"
echo "|| Selamat Datang di ||"
echo "|| Penyewaan DVD Kicy ||"
echo "|| By:Koko Yanto simamora ||"
echo "+++++++++++++++++++++++++++++++++++++++++++++++"
echo ""
echo "1. List Film Baru "
echo ""
echo "2. List Film Hits "
echo ""
echo "3. List Film Anime "
echo ""
echo "4. Ketentuan Harga "
echo ""
echo "5. History Peminjaman "
echo ""
echo "6. Credits "
echo ""
echo "7. Exit "
read -p "Pilihan Anda [1-7] : " pil
if [ $pil -eq 1 ]
then
baru
elif [ $pil -eq 2 ]
then
hits
elif [ $pil -eq 3 ]
then
anime
elif [ $pil -eq 4 ]
then
harga
elif [ $pil -eq 5 ]
then
histori
elif [ $pil -eq 6 ]
then
credits
elif [ $pil -eq 7 ]
then
clear
exit
else
echo "Anda belum memasukan pilihan..."
fi
read -p "Tekan enter untuk Melihat list / Menyewa DVD kembali" readEnterKey
done
fi
2. Program pada box No.2 adalah data utnutk daftar DVD yang yang di inputkan secara dinamis
simpan
dengan nama file "dvdpesan.sh" (tanpa tanda petik) >> nano dvdpeasa.sh
>>copy script di bawah >> Tenkan Crt+X>>Tekan Y
(simpan) N (gagal/batal)
#!/bin/bash
hari=3000
a1="MIB 3"
a2="The Avengers"
a3="Dark Shadows"
a4="The Amazing Spiderman"
a5="Battleship"
b1="The Hunger Games"
b2="Titanic"
b3="Harry Potter 7 Part 2"
b4="The Bucket List"
b5="The Pursuit of Happyness"
c1="My Boss My Hero"
c2="Crows Zero"
c3="Chibi Maruko Chan"
c4="Naruto Shippuden"
c5="Hunter X Hunter"
inp() {
read -p "Lamanya hari peminjaman = " o
}
baru() {
echo ""
echo "-----------------------------"
echo " Film Baru "
echo "-----------------------------"
echo " "
echo "1. MIB 3 "
echo "2. The Avengers "
echo "3. Dark Shadows "
echo "4. The Amazing Spiderman "
echo "5. Battleship "
echo ""
read -p "Pilih Film yang anda inginkan : " p
if [ $p -eq 1 ]
then
inp
title=$a1
bayaro=$(($o*3000))
elif [ $p -eq 2 ]
then
inp
title=$a2
bayaro=$(($o*3000))
elif [ $p -eq 3 ]
then
inp
title=$a3
bayaro=$(($o*3000))
elif [ $p -eq 4 ]
then
inp
title=$a4
bayaro=$(($o*3000))
elif [ $p -eq 5 ]
then
inp
title=$a5
bayaro=$(($o*3000))
else
echo "inputan salah"
. dvdsalah.sh
fi
bayar=$bayaro
echo "Terima Kasih $member"
echo "Judul film yang anda sewa adalah : $title"
echo "Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar"
echo "============================================================================
$(date)
Nama Peminjam : $member
Judul film yang anda sewa adalah : $title
Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar" >> strukk
}
hits() {
echo ""
echo "-----------------------------"
echo " Film Hits "
echo "-----------------------------"
echo " "
echo "1. The Hunger Games "
echo "2. Titanic "
echo "3. Harry Potter 7 Part 2 "
echo "4. The Bucket List "
echo "5. The Pursuit of Happyness "
echo ""
read -p "Pilih Film yang anda inginkan : " p
if [ $p -eq 1 ]
then
inp
title=$b1
bayaro=$(($o*3000))
elif [ $p -eq 2 ]
then
inp
title=$b2
bayaro=$(($o*3000))
elif [ $p -eq 3 ]
then
inp
title=$b3
bayaro=$(($o*3000))
elif [ $p -eq 4 ]
then
inp
title=$b4
bayaro=$(($o*3000))
elif [ $p -eq 5 ]
then
inp
title=$b5
bayaro=$(($o*3000))
else
. dvdsalah.sh
fi
bayar=$bayaro
echo "Terima Kasih $member"
echo "Judul film yang anda sewa adalah : $title"
echo "Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar"
echo "============================================================================
$(date)
Nama Peminjam : $member
Judul film yang anda sewa adalah : $title
Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar" >> strukk
}
anime() {
echo ""
echo "-----------------------------"
echo " Film Asia "
echo "-----------------------------"
echo " "
echo "1. My Boss My Hero "
echo "2. Crows Zero "
echo "3. Chibi Maruko Chan Live Action Movie "
echo "4. Naruto Shippuden "
echo "5. Hunter X Hunter "
echo ""
read -p "Pilih Film yang anda inginkan : " p
if [ $p -eq 1 ]
then
inp
title=$c1
bayaro=$(($o*3000))
elif [ $p -eq 2 ]
then
inp
title=$c2
bayaro=$(($o*3000))
elif [ $p -eq 3 ]
then
inp
title=$c3
bayaro=$(($o*3000))
elif [ $p -eq 4 ]
then
inp
title=$c4
bayaro=$(($o*3000))
elif [ $p -eq 5 ]
then
inp
title=$c5
bayaro=$(($o*3000))
else
. dvdsalah.sh
fi
bayar=$bayaro
echo "Terima Kasih $member"
echo "Judul film yang anda sewa adalah : $title"
echo "Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar"
echo "============================================================================
$(date)
Nama Peminjam : $member
Judul film yang anda sewa adalah : $title
Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar" >> strukk
}
harga() {
echo "Biaya sewa DVD Rp 3000/hari"
}
histori() {
clear
cat strukk | more
}
credits() {
clear
echo " http://yantow-chow.blogspot.com "
echo ""
echo "++++++++++++++++++++++++++++++++++++++++++++++++"
echo "|| http://yantow-chow.blogspot.com ||"
echo "|| Selamat Datang di ||"
echo "|| Penyewaan DVD Kicy ||"
echo "|| By:Koko Yanto simamora ||"
echo "+++++++++++++++++++++++++++++++++++++++++++++++"
echo ""
}
hari=3000
a1="MIB 3"
a2="The Avengers"
a3="Dark Shadows"
a4="The Amazing Spiderman"
a5="Battleship"
b1="The Hunger Games"
b2="Titanic"
b3="Harry Potter 7 Part 2"
b4="The Bucket List"
b5="The Pursuit of Happyness"
c1="My Boss My Hero"
c2="Crows Zero"
c3="Chibi Maruko Chan"
c4="Naruto Shippuden"
c5="Hunter X Hunter"
inp() {
read -p "Lamanya hari peminjaman = " o
}
baru() {
echo ""
echo "-----------------------------"
echo " Film Baru "
echo "-----------------------------"
echo " "
echo "1. MIB 3 "
echo "2. The Avengers "
echo "3. Dark Shadows "
echo "4. The Amazing Spiderman "
echo "5. Battleship "
echo ""
read -p "Pilih Film yang anda inginkan : " p
if [ $p -eq 1 ]
then
inp
title=$a1
bayaro=$(($o*3000))
elif [ $p -eq 2 ]
then
inp
title=$a2
bayaro=$(($o*3000))
elif [ $p -eq 3 ]
then
inp
title=$a3
bayaro=$(($o*3000))
elif [ $p -eq 4 ]
then
inp
title=$a4
bayaro=$(($o*3000))
elif [ $p -eq 5 ]
then
inp
title=$a5
bayaro=$(($o*3000))
else
echo "inputan salah"
. dvdsalah.sh
fi
bayar=$bayaro
echo "Terima Kasih $member"
echo "Judul film yang anda sewa adalah : $title"
echo "Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar"
echo "============================================================================
$(date)
Nama Peminjam : $member
Judul film yang anda sewa adalah : $title
Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar" >> strukk
}
hits() {
echo ""
echo "-----------------------------"
echo " Film Hits "
echo "-----------------------------"
echo " "
echo "1. The Hunger Games "
echo "2. Titanic "
echo "3. Harry Potter 7 Part 2 "
echo "4. The Bucket List "
echo "5. The Pursuit of Happyness "
echo ""
read -p "Pilih Film yang anda inginkan : " p
if [ $p -eq 1 ]
then
inp
title=$b1
bayaro=$(($o*3000))
elif [ $p -eq 2 ]
then
inp
title=$b2
bayaro=$(($o*3000))
elif [ $p -eq 3 ]
then
inp
title=$b3
bayaro=$(($o*3000))
elif [ $p -eq 4 ]
then
inp
title=$b4
bayaro=$(($o*3000))
elif [ $p -eq 5 ]
then
inp
title=$b5
bayaro=$(($o*3000))
else
. dvdsalah.sh
fi
bayar=$bayaro
echo "Terima Kasih $member"
echo "Judul film yang anda sewa adalah : $title"
echo "Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar"
echo "============================================================================
$(date)
Nama Peminjam : $member
Judul film yang anda sewa adalah : $title
Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar" >> strukk
}
anime() {
echo ""
echo "-----------------------------"
echo " Film Asia "
echo "-----------------------------"
echo " "
echo "1. My Boss My Hero "
echo "2. Crows Zero "
echo "3. Chibi Maruko Chan Live Action Movie "
echo "4. Naruto Shippuden "
echo "5. Hunter X Hunter "
echo ""
read -p "Pilih Film yang anda inginkan : " p
if [ $p -eq 1 ]
then
inp
title=$c1
bayaro=$(($o*3000))
elif [ $p -eq 2 ]
then
inp
title=$c2
bayaro=$(($o*3000))
elif [ $p -eq 3 ]
then
inp
title=$c3
bayaro=$(($o*3000))
elif [ $p -eq 4 ]
then
inp
title=$c4
bayaro=$(($o*3000))
elif [ $p -eq 5 ]
then
inp
title=$c5
bayaro=$(($o*3000))
else
. dvdsalah.sh
fi
bayar=$bayaro
echo "Terima Kasih $member"
echo "Judul film yang anda sewa adalah : $title"
echo "Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar"
echo "============================================================================
$(date)
Nama Peminjam : $member
Judul film yang anda sewa adalah : $title
Lama anda meminjam adalah $o hari. Total harga bayar = Rp. $bayar" >> strukk
}
harga() {
echo "Biaya sewa DVD Rp 3000/hari"
}
histori() {
clear
cat strukk | more
}
credits() {
clear
echo " http://yantow-chow.blogspot.com "
echo ""
echo "++++++++++++++++++++++++++++++++++++++++++++++++"
echo "|| http://yantow-chow.blogspot.com ||"
echo "|| Selamat Datang di ||"
echo "|| Penyewaan DVD Kicy ||"
echo "|| By:Koko Yanto simamora ||"
echo "+++++++++++++++++++++++++++++++++++++++++++++++"
echo ""
}
3. Program pada box No.3 merupakan struk yang dari hasil rental
simpan dengan nama file "strukk.sh" (tanpa tanda petik) >> nano strukk.sh >>copy script di bawah >> Tenkan Crt+X>>Tekan Y (simpan) N (gagal/batal)
============================================================================
Fri Jun 1 00:54:21 WIT 2012
Nama Peminjam : yoyoy yeyes
Judul film yang anda sewa adalah : The Amazing Spiderman
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 01:05:21 WIT 2012
Nama Peminjam : yanuar rivandi
Judul film yang anda sewa adalah : Naruto Shippuden
Lama anda meminjam adalah 8 hari. Total harga bayar = Rp. 24000
============================================================================
Fri Jun 1 01:17:29 WIT 2012
Nama Peminjam : asd
Judul film yang anda sewa adalah : The Bucket List
Lama anda meminjam adalah 5 hari. Total harga bayar = Rp. 15000
============================================================================
Fri Jun 1 07:38:06 WIT 2012
Nama Peminjam : Koko Yanto
Judul film yang anda sewa adalah : Titanic
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 08:02:38 WIT 2012
Nama Peminjam : asd
Judul film yang anda sewa adalah :
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp.
============================================================================
Fri Jun 1 08:09:20 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Dark Shadows
Lama anda meminjam adalah 9 hari. Total harga bayar = Rp. 27000
============================================================================
Fri Jun 1 08:09:24 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Dark Shadows
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 27000
============================================================================
Fri Jun 1 08:12:26 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Battleship
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 08:21:25 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Dark Shadows
Lama anda meminjam adalah 5 hari. Total harga bayar = Rp. 15000
============================================================================
Fri Jun 1 08:41:20 WIT 2012
Nama Peminjam : yanto
Judul film yang anda sewa adalah : The Avengers
Lama anda meminjam adalah 2 hari. Total harga bayar = Rp. 6000
============================================================================
Fri Jun 1 08:44:23 WIT 2012
Nama Peminjam : asd
Judul film yang anda sewa adalah : Hunter X Hunter
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 20:09:14 WIT 2012
Nama Peminjam : yan
Judul film yang anda sewa adalah : Harry Potter 7 Part 2
Lama anda meminjam adalah 3 hari. Total harga bayar = Rp. 9000
Fri Jun 1 00:54:21 WIT 2012
Nama Peminjam : yoyoy yeyes
Judul film yang anda sewa adalah : The Amazing Spiderman
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 01:05:21 WIT 2012
Nama Peminjam : yanuar rivandi
Judul film yang anda sewa adalah : Naruto Shippuden
Lama anda meminjam adalah 8 hari. Total harga bayar = Rp. 24000
============================================================================
Fri Jun 1 01:17:29 WIT 2012
Nama Peminjam : asd
Judul film yang anda sewa adalah : The Bucket List
Lama anda meminjam adalah 5 hari. Total harga bayar = Rp. 15000
============================================================================
Fri Jun 1 07:38:06 WIT 2012
Nama Peminjam : Koko Yanto
Judul film yang anda sewa adalah : Titanic
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 08:02:38 WIT 2012
Nama Peminjam : asd
Judul film yang anda sewa adalah :
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp.
============================================================================
Fri Jun 1 08:09:20 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Dark Shadows
Lama anda meminjam adalah 9 hari. Total harga bayar = Rp. 27000
============================================================================
Fri Jun 1 08:09:24 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Dark Shadows
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 27000
============================================================================
Fri Jun 1 08:12:26 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Battleship
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 08:21:25 WIT 2012
Nama Peminjam :
Judul film yang anda sewa adalah : Dark Shadows
Lama anda meminjam adalah 5 hari. Total harga bayar = Rp. 15000
============================================================================
Fri Jun 1 08:41:20 WIT 2012
Nama Peminjam : yanto
Judul film yang anda sewa adalah : The Avengers
Lama anda meminjam adalah 2 hari. Total harga bayar = Rp. 6000
============================================================================
Fri Jun 1 08:44:23 WIT 2012
Nama Peminjam : asd
Judul film yang anda sewa adalah : Hunter X Hunter
Lama anda meminjam adalah 7 hari. Total harga bayar = Rp. 21000
============================================================================
Fri Jun 1 20:09:14 WIT 2012
Nama Peminjam : yan
Judul film yang anda sewa adalah : Harry Potter 7 Part 2
Lama anda meminjam adalah 3 hari. Total harga bayar = Rp. 9000
1. Copy kode diatas ke teks editor linux (nano,piko,gedit atau vi) dan simpan pada komputer anda atau pada flashdisk dengan nama tertera diatas .
2. Buka Shell atau command prompt pada sistem operasi Linux anda (bisa semua versi Linux) baik yang virtual.3. Pindahkan direktori shell ke direkstori dimana anda menyimpan file tersebut menggunakan perintah cd (change directory). Misalnya apabila suatu file disimpan pada direktori Desktop maka perintahnya adalah " cd /Desktop/ " (tanpa tanda petik).
Tapi lebih tepatnya simpan foldernya di Home >> nah dari sana bisa masuk ke folder tersebut dengan syntax cd nama_folder kemudian >>ls
4. Ketik perintah " chmod u+x dvd.sh " (tanpa tanda petik) lakukan untuk semua program yang diatas satu per satu sesuai nama file yang di simpan tersebut. Perintah ini untuk mengeksekusi file tersebut atau kalau anda melakukan modifikasi usahan confile terlebih dahulu.
5. Kalau kode tidak ada yang error, ketik perintah " ./produk.sh "lakukan untuk semua program yang diatas sesuai nama file yang di simpan tersebut(tanpa tanda petik). Perintah ini untuk mengkompile file tersebut.
6. Kalau sudah sampai tahap ini maka akan ditampilkan aplikasi Transaksi sederhana pada terminal.
NB:
Menu yang pertama Anda jalankan adalah file ./dvd.sh
Semua Program saling berhubungan dan ketika Anda ingin mencoba silahkan di ikuti step-step tersebut dan ketika anda sudah mencoba Anda lebih mudah untuk memahami kode dalam programnya dan Anda bisa otak-atik sendiri
Cara menjalankan:
Saya akan sedikit mengulas cara menjalankan kode diatas...
Semoga sedikit pengetahuan ini dapat bermanfaat bagi temen2 yang sedang belajar pemrograman shell.. :)
kalau ada yang kurang jelas atau ada kekurangan diri aplikasi ini tolog tinggalkan comentarnya di bawah..
ass.. mas ada file jadinya ndak???
BalasHapus