Anda di halaman 1dari 22

PRAKTIKUM SISTEM OPERASI

Bekerja Dengan Bash Shell

Kelompok 5

3 D4 Teknik Komputer B

1. Didi Alfandi 2210181033


2. Lusiana Diyan Ningrum 2210181051
3. Aditya Yuliyanto 2210181060

PROGRAM STUDI D4 TEKNIK KOMPUTER


DEPARTEMEN TEKNIK INFORMATIKA DAN KOMPUTER
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
2020
BAB 1
PENDAHULUAN

POKOK BAHASAN:

 History pada Bash Shell


 Membuat Bash Shell Script

TUJUAN BELAJAR:

Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu:


 Memahami shell pada sistem operasi Linux
 Menggunakan feature history pada Bash Shell
 Mengubah feature history pada Bash Shell
 Mengubah prompt shell
 Melakukan konfigurasi Bash Shell untuk menjalankan skrip secara
otomatis
 Membuat dan mengeksekusi shell script sederhana melalui editor vi
 Memahami job control
 Memahami stack
 Menggunakan alias
BAB 2
DASAR TEORI
1. SHELL
Shell adalah Command executive, artinya program yang menunggu instruksi
dari pemakai, memeriksa sintak dari instruksi yang diberikan, kemudian
mengeksekusi perintah tersebut. Shell ditandai dengan prompt. Untuk
pemakai menggunakan prompt $ dan untuk superuser menggunakan #.
Beberapa macam shell :
 /bin/sh
Bourne shell, dirancang oleh Steve Bourne dari AT&T
 /bin/csh
Dikembangkan oleh UNIX Berkeley yang dikenal dengan C-Shell
 /bin/bash
Kompatibel dengan Bourne Shell dan juga mengadaptasi kemampuan
Korn-Shell.
Perbedaan mendasar antara Shell diatasi hampir tidak ada, kecuali pada
fasilitas pemrograman dan editing.

2. PROFILE
Pada saat login, program akan menjalankan beberapa program yaitu :
1. /etc/profile
Berisi shell script yang berlaku untuk seluruh pengguna Linux
2. Profil untuk setiap pemakai
Pada home directory, login pertama kali akan memeriksa file .bash_profile
. Bila tidak ada, maka file .bash_login akan dicari. Bila .bash_login tidak
ada, maka dicari file bernama .profile
3. .bashre
File ini akan dieksekusi untuk perpindahan dari satu shell ke shell yang
lain melalui instruksi su.
4. .bash_logout
Pada saat logout, maka bash akan mencari file .bash_logout. Bila ada, file
tersebut akan dieksekusi sebelum logout.

Isi dari /etc/profile :


# System wide environment and startup programs
# Functions and aliases go in /etc/bashrc

PATH = “ $PATH:/user/X11R6/bin ”
PS1 = “ [\u@\h\W]\\$ ”
umask 022

USER = ‘id -un’


LOGNAME = $USER
MAIL = “/var/spool/mail/$USER”

HOSTNAME = ‘/bin/hostname’
HISTSIZE = 1000
HISTFILESIZE = 1000

Export PATH PSI HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL


PATH merupakan daftar nama direktori. Bila sebuah instruksi diberikan
dari prompt shell, maka instruksi tersebut akan dicari pada daftar
tersebut
PS1 adalah prompt dimana
\u = Nama User
\h = Nama Host
\W = Nama working directory

3. HISTORY
History diadaptasi dari C-Shell, yaitu catatan dari semua instruksi yang
sejauh ini telah dilakukan. Catatan ini dapat dilihat sebagai history,
kemudian dapat dipilih kembali, diedit dan dieksekusi. History
memudahkan pemakai untuk mengedit kembali instruksi kompleks dan
panjang., terutama bila terjadi kesalahan pada penulisan instruksi maupun
parameter.
Navigasi pada daftar history menggunakan karakter control sebagai
berikut :
^P(Ctrl+P) melihat instruksi sebelumnya
^N(Ctrl+N) melihat instruksi berikutnya
!! eksekusi kembali instruksi sebelumnya
!! -3 3 instruksi sebelumnya akan diulang
!!88 ulangi instruksi no 88

4. BASH SCRIPT
Bash script adalah file yang berisi koleksi program yang dapat dikesekusi.
Untuk eksekusi bash script gunakan . sebelum file bash script yang
berarti eksekusi shell dan tanda ./ berarti file bash-script berada pada
direktori actual.

5. JOB CONTROL
Job adalah sebuah eksekusi program yang diberikan kepada kernel.
Sebuah Job dianggap selesai, bila eksekusi program tersebut berakhir.
Ekesekusi Job adalah sama dengan eksekusi program, baik proses
Background maupun proses Foreground.

6. EDITOR vi
Vi adalah full screen editor, artinya editor tersebut dapat memanfaatkan
fasilitas satu layar penuh. Vi mempunyai 2 buah modus, yaitu :
 Command line
Editor vi mengintepretasikan input sebagai instruksi untuk dieksekusi
oleh editor, contoh seperti mencari teks, mengganti teks secara
otomatis dan lainnya.
 Editing
Editor vi mengintepretasikan input sebagai teks yang akan
dimasukkan ke dalam buffer editor. Pada bagian bawah layar akan
tampil teks “INSERTING”.

Pada awal vi dijalankan, maka program memasuki command mode.


Dengan menekan tombol “i” maka akan memasuki editing. Untuk
kembali ke command mode, tekan tombol Esc.

Kunci – kunci teks editor vi dapat dilihat pada tabel sebagai berikut :
TUGAS PENDAHULUAN :
1. Apa yang dimaksud dengan shell dan sebutkan shell yang ada di system
operasi Linux
Shell adalah Command executive, artinya program yang menunggu intruksi
dari pemakai, memeriksa sintak dari instruksi yang diberikan, kemudian
mengeksekusi perintah terssebut.
-/bin/sh
Bourno shell, dirancang oleh Steve Bourne dari AT&T
-/bin/csh
Dikembangkan oleh UNIX Beerkeley yang dikenal dengan C -Shell
-/bin/bash
Kompatibel dengan Bourne Shell dan juga mengadaptasi kemampuan Kom-
Shell.
2. Apa yang dimaksud dengan profile pada Bash Shell
Profile pada bash shell merupakan profil untuk setiap pemakai pada home
directory.
3. Apa yang Anda ketahui mengenai file bashrc
File .bashrc adalah file yang akan dieksekusi untuk perpindahan dari satu
shell ke shell yang lain melalui intruksi su
4. Apa yang dimaksud dengan history pada Bash Shell. Apa kegunaan perintah
history, sebutkan cara – cara untuk mengetahui history perintah perintah yang
pernah digunakan oleh user.
History yaitu catatan dari semua intruksi yang sejauh ini telah dilakukan.
History memudahkan pemakai untuk mengedit kembali instruksi kompleks
dan panjang, terutama bila terjadi kesalahan pada penulisan instruksi maupun
parameter
^P (Ctrl -P) melihat instruksi
^N (Ctrl -N) melihat instruksi berikutnya
!! eksekusi kembali instruksi sebelumnya
!! -3 3 instruksi sebelumnya akan diulang
!!88 ulangi instruksi no 88
BAB 3
PERCOBAAN
PERCOBAAN 1 : Profile

PERCOBAAN 2 : Menggunakan Feature History Bash


PERCOBAAN 3 : Mengubah Feature History Bash
PERCOBAAN 4 : Mengubah Prompt Shell
PERCOBAAN 5 : Menambahkan Otomatisasi ke Prompt Shell
BAB 4
PEMBAHASAN

Pada praktikum ini, kami melakukan percobaan mengenai bekerja dengan


bash shell pada sistem operasi Linux. Pada percobaan ini membuat bash shell
script yang digunakan pada sistem operasi linux serta mengetahui history pada
bash shell untuk menggunakan dan mengubah feature history pada bash shell
maupun melakukan konfigurasi bash shell untuk menjalankan script secara
otomatis.
Pada percobaan satu mengenai profil, perintah ls digunakan untuk melihat
home directory dan file .bash_profile merupakan hidden file. Sedangkan perintah
$ more .bash_profile digunakan untuk mengeksekusi sebelum logout dan
menghapus temporary file dan job.
Pada percobaan dua tentang menggunakan feature history bash, langkah
pertama berguna untuk menampilkan perintah sebelumnya yang pernah dibuat.
Perintah pada percobaan 2 langkah 2 merupakan perintah yang digunakan untuk
melihat semua perintah yang pernah dimasukkan. Sedangkan perintah $ history
digunakan untuk memeriksa apakah perintah ini ditambahkan pada history.
Perintah $ !<nomor perintah> berguna untuk menampilkan history dengan
mengetikkan nomor history yang kita kehendaki. Perintah $ !?etc? digunakan
untuk mencari perintah dengan menyertakan perintah yang diinginkan misalnya !?
etc? akan menjalankan perintah ls –l/etc yang sebelumnya pernah digunakan.
Perintah $ history pada langkah 6 digunakan untuk menampilkan perintah $ ls –
l/etc yang kedua bukan perintah $ !?etc? yang dijalankan sebelumnya. Perintah
$ !?wombat99?, dikarenakan string tidak ditemukan pada perintah history maka
akan muncul pesan not found seperti output pada hasil percobaan. Perintah $ !who
yang dijalankan adalah perintah who $ whoa maka yang dijalankan adalah
perintah whoami. Perintah yang dijalankan pada langkah 9 digunakan untuk
menggantikan string pada perintah history. Sedangkan perintah yang kedua yakni
$ ^shell^alias^ untuk menampilkan kata “alias”, maka tidak perlu mengetik
perintah yang panjang lagi, tetapi cukup ketik ^shell6^alias^. Dan untuk
menghentikannya dengan mengetikkan Q maka shell akan kembali seperti semula.
Percobaan 3 mengenai perintah – perintah untuk mengubah feature history
bash, pada langkah 1 dengan perintah $ cd, di file .bash_history menyimpan file
history yang terdapat pada home girectory dan untuk membukanya menggunakan
perintah $ cd. Perintah $ tail .bash_history berfungsi untuk melihat beberapa baris
pada file .bash_history. Perintah $ history digunakan untuk menampilkan baris
terakhir yang mana adalah perintah history dan baris sebelumnya adalah tail
.bash_history, perintah history bersifat up to date karena disimpan pada memory
system dan file terbaru akan terlihat. Perintah $ echo ‘ini perintah saya’ berguna
untuk menampilkan tulisan ‘ini perintah saya’. Pada langkah lima, perintah
$history berguna untuk melihat “ini perintah saya” dalam history dan perintah
$tail .bash_history berguna untuk menampilkan yang berhubungan dengan bash.
Perintah $ history | less untuk melihat perintah history terakhir pada screen.
Perintah $ wc –l .bash_history digunakan untuk melihat berapa banyak perintah
history yang ada pada file . Perintah $ set|grep HISTSIZE digunakan untuk
melihat jangkauan (limit) perintah history. Perintah $ echo ‘HISTSIZE=500\ grep’
>> .bashre digunakan untuk memperbesar jangkauan file history. Perintah $ set |
grep HISTSIZE digunakan untuk melihat jangkauan (limit) perintah history.
Mengetikkan perintah history beberapa kali, maka perintah ini akan disimpan
pada bash history meskipun yang diketikkan perintahnya sama. Perintah $ echo
‘HISTCONTROL = ignoredups’ >> .bashrc digunakan untuk melakukan
konfigurasi bash agar tidak menambah perintah ke history jika perintah yang
diketikkan sama dengan sebelumnya.
Percobaan empat merupakan percobaan untuk mengubah prompt shell.
Langkah 1 memiliki perintah $ PS1=’\t:’ digunakan untuk menampilkan waktu
system dalam format 24 jam sebagai prompt bash JJ:MM:DD, perintah ini juga
dpat digunakan unutk menampilkan format 12 jam dengan indicator am dan pm.
Perintah $ PS1 = ‘\w:’ berfungsi untuk menampilkan “~:” sedangkan perintah $
cd/usr/sbin untuk melihat prompt /usr/sbin. Perintah $PS1=’\W:’ berguna untuk
melihat prompt sbin. Perintah pada langkah 6 yang menggunakan symbol lebih
besar dari (>) muncul yang memberitahukan bahwa BASH menunggu Anda
menyelesaikan perintah. Perintah $PS2=’Selesai memasukkan perintah Anda:’
yang diikuti mengetikkan penutup quote (‘) dan tekan Enter berguna untuk
menyelesaikan prompt PS2, kata “Hello” muncul diikuti dengan prompt PS 1
pada baris baru. Perintah $ echo ‘Hello digunakan untuk menampilkan prompt
PS1 sedangkan perintah $PS1=’\033[0;34m\w\$ \033[0;37m’ digunakan untuk
menampilkan prompt Bash berwarna. Perintah $PS1=’\033[0;31m\w\033[0;32m\$
\033[0;37m’ digunakan untuk mendapatkan prompt warna merah. 0=hitam,
31=merah, 32=hijau, 34=biru, 35=ungu, 36=cyan, 37=putih. Dengan perintah $
PS1=’\033[0;34m\w\033[0;32m\$ \033[0;37m’ kita dapat mengkolaborasikan
warna sesuai kehendak. Perintah PS1=’\033[7;34m\w\033[7;32m\$ \033[0;37m’
dapat membuat $ menjadi besar atau seperti diblok. Untuk menampilkan prompt
dengan warna berkebalikan dengan mengganti atribut control :7 pada perintah
$PS1=’\033[5;34m\w\033[5;32m\$ \033[0;37m’. sedangkan untuk menampilkan
prompt berkedip, atribut control diganti 5 seperti perintah $
PS1=’\033[5;34m\w\033[5;32m\$ \033[0;37m’.
Percobaan 5 untuk menambahkan otomatisasi ke Prompt Shell, dimulai
dengan menggunakan perintah $ cd ~ untuk masuk ke directory home. Perintah
$echo ’sort ~/list > ~/r13; mv ~/r13 ~/list’ > ~/sorter digunakan untuk membuat
file sederhana. Perintah $chmod +x sorter digunakan untuk membuat file skrip
menjadi file executable. Perintah $PROMPT_COMMAND=~/sorter digunakan
untuk menjalankan program sorter di atas setiap shell bash menampilkan pompt
PS1. Perintah $echo ’John Smith:13001’>>list untuk membuat file secara
otomatis sedangkan perintah $cat list digunakan untuk melihat isi file list yang
telah dibuat. Perintah pada langkah nomor tujuh digunakan untuk melihat isi file
list yang telah dibuat. Perintah $ cat list berfungsi untuk menampilkan isi file list
secara urut sesuai nama abjad. Dan untuk berhenti menjalankan program sorter
dapat menggunakan perintah $PROMPT_COMMAND= .

KESIMPULAN
Dari praktikum diatas dapat disimpulkan bahwa :
 Shell atau Command executive merupakan program yang menunggu instruksi
dari pemakai, memeriksa sintak dari instruksi yang diberikan, kemudian
mengeksekusi perintah tersebut.
 Warna prompt dapat dirubah-rubah sesuai dengan kehendak
 Mengetahui penjelasan dari history yaitu catatan dari semua instruksi yang
sejauh ini telah dilakukan.
 Dengan menggunakan perintah – perintah diatas dan dilakukan melalui
konfigurasi Bash Shell untuk menjalankan skrip secara otomatis, mengubah
warna prompt dan dengan perintah history kita dapat melihat perintah-
perintah yang telah disimpan dan dibuat sebelumnya.

Anda mungkin juga menyukai