0% menganggap dokumen ini bermanfaat (0 suara)
105 tayangan20 halaman

Bekerja Dengan Bash Shell

Dokumen tersebut membahas tentang praktikum sistem operasi dengan Bash Shell. Ringkasannya adalah: Dokumen tersebut membahas tentang materi praktikum sistem operasi yang meliputi sejarah, penggunaan, dan pembuatan Bash Shell Script.

Diunggah oleh

Lusiana Diyan
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
105 tayangan20 halaman

Bekerja Dengan Bash Shell

Dokumen tersebut membahas tentang praktikum sistem operasi dengan Bash Shell. Ringkasannya adalah: Dokumen tersebut membahas tentang materi praktikum sistem operasi yang meliputi sejarah, penggunaan, dan pembuatan Bash Shell Script.

Diunggah oleh

Lusiana Diyan
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 20

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 6 : Membuat Bash-script dan menjalankannya

1. Membuat file pl .sh

2. Mengubah program menjadi executable

3. Menjalankan script

4. Konvensi dalam pembuatan script shell dinyatakan sebagai #!/bin/bash.


Tambahkan pada file pl .sh konvensi tersebut

5. Buatlah file p2.sh

6. Menjalankan beberapa program shell dalam satu baris instruksi yang


dipisahkan dengan tanda ;
PERCOBAAN 7 : Job Control

1. Proses foreground

2. Proses background

3. Setiap job mempunyai PID yang tunggal (unique), untuk melihat jobs aktif

4. Buatlah file plop.sh. File ini tidak akan pernah berhenti kecuali ditekan Ctrl+C

5. Buatlah file plop.sh menjadi executable. Jalankan program, akan ditampilkan


kata Hallo setiap 10 detik. Untuk keluar program, tekan Ctrl+C

PERCOBAAN 8 : Manipulasi Stack untuk Directory

1. Instruksi dirs digunakan untuk melihat stack direktori, pada output h


ditampilkan direktori home ~
2. Membuat 3 buah direktori

3. Instruksi dirs. Digunakan untuk melihat stack direktori, pada output h


ditampilkan direktori home ~

4. Membuat 3 buah direktori

PERCOBAAN 9 : Alias

1. Alias adalah mekanisme untuk memberi nama alias pada salah satu atau
kelompok instruksi. Untuk melihat alias yang sudah terdaftar pada sistem

2. Membuat beberapa alias

3. Gunakan instruksi hasil alias


4. Untuk menghapus alias gunakan instruksi unalias

LATIHAN
1. Eksekusi seluruh profile yang ada :
a. Edit file profile /etc/profile dan tampilkan pesan sebagai berikut

b. Asumsi nama anda student, maka edit semua profile yang ada

c. Ganti nama /home/student dengan nama anda sendiri. Pada setiap file
tersebut, cantumkan instruksi echo

d. Lakukan hal yang sama untuk file lainnya


2. Jalankan instruksi substitute user, kemudian keluar dengan perintah exit
sebagai berikut :
$ su student
$ exit

Kemudian gunakan opsi sebagai berikut :


$su –student
$ exit

Jelaskan perbedaan kedua utilitas tersebut


Jika –(atau -l) ditentukan, maka su mensimulasikan login nyata.
Environment dibersihkan kecuali untuk beberapa variabel pilihan
(terutama, DISPLAY dan XAUTHORITY pada beberapa sistem). Jika
tidak, environment dibiarkan seperti itu kecuali untuk PATH yang direset.
3. Logout
a. Edit file .bash_logout, tampilkan pesan dan tahan selama 5 detik,
sebelum eksekusi logout

b. Edit file .bash_logout, tampilkan pesan dan tahan selama 4 detik,


sebelum eksekusi logout

4. History
a. Ganti nilai HISTSIZE dari 1000 menjadi 20

b. Gunakan fasilitas history dengan mengedit instruksi baris ke 5 dari


instruksi yang terakhir dilakukan
c. Ulangi instruksi yang terakhir. Gunakan juga ^P dan ^N untuk
bernavigasi pada history buffer

d. Ulangi instruksi pada history buffer nomor tertentu

e. Ulangi instruksi dengan prefix “ls”


$ !ls

$ !?ls?
Jelaskan perbedaan instruksi di atas
Perbedaan antara !ls dengan !?ls? terletak pada aturan regex. Pada
kasus diatas !?ls? bisa menggunakan also atau olsa asalkan tetap
mengandung kata ls, sedangkan !ls hanya akan melakukan eksekusi
pada event yang menggunakan perintah ls saja.

5. Prompt String (PS)


a. Edit file .bash_profile, ganti prompt PS1 dengan ‘>’. Instruksi export
diperlukan dengan parameter nama variabel tersebut, agar perubahan
variabel PS1 dikenal oleh semua shell

b. Ubahlah warna shell prompt dengan warna biru dan berkedip

6. Bash script
a. Buat 3 buah script p1.sh, p2.sh, p3.sh denga nisi masing – masing :
p1.sh
#! /bin/bash echo “Program p1” ls –l

p2.sh
#! /bin/bash echo “Program p2” who

p3.sh
#! /bin/bash echo “Program p3” ps x

b. Jalankan script tersebut sebagai berikut dan perhatikan hasilnya :

7. Jobs
a. Buat shell-script yang melakukan loop dengan nama pwaktu.sh, setiap
10 detik, kemudian menyimpan tanggal dan jam pada file hasil
b. Jalankan sebagai background, kemudian jalankan satu program
(utilitas find) di background sebagai berikut :

c. Jadikan program ke 1 sebagai foregrounf, tekan ^Z dan kembalikan


program tersebut ke background
$ fg %1
$ bg

d. Stop program background dengan utilitas kill


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 enam mengenai cara untuk membuat bash-script dan
menjalankannya. Pada langkah pertama yakni membuat file p1.sh dengan
menggunakan editor nano untuk menjalankan perintah $ vi p1.sh. Kemudian
mengubah program menjadi executable dengan perintah chmod yang digunakan
untuk meng-compile program menjadi executable. Untuk menjalankan script yang
telah dicompile dapat dilakukan dengan menggunakan perintah ./<nama_file>.
Sedangkan perintah #!/bin/bash untuk konvensi dalam pembuatan script shell
yang digunakan untuk menampilkan teks “Program Bash Script”. Untuk membuat
file baru dilakukan dengan cara mengetikkan nano pada terminal kemudian akan
keluar editor nano. Selanjutnya ketikkan script di dalam editor nano dan simpan
dengan Ctrl + O. Pada langkah 6 merupakan perintah yang digunakan untuk
menjalankan beberapa program shell dalam satu baris instruksi yang dipisahkan
dengan tanda ; (titik koma).
Pada percobaan tujuh mengenai Job Control, perintah $ ps x digunakan
untuk mengetahui proses foreground sedangkan untuk mengetahui proses
background dapat dilakukan dengan menjalankan perintah $ ps x > hasil &.
Perintah $ jobs digunakan untuk melihat jobs yang aktif, karena setiap job meiliki
PID yang unique (tunggal). Untuk membuat file baru dan menjadikannya
executable dapat dilakukan dengan membuat file baru kemudian mengetikkan
script pada langkah 4 dan untuk menjalankannya menggunakan $ chmod +x
ploop.sh dan mengcompile menggunakan ./plop.sh. Output dari perintah ini akan
menampilkan tulisan Hello setelah 10 menit dan akan muncul terus menerus
sampai dilakukan trigger dengan menekan Ctrl+ C untuk menghentikannya.
Percobaan 8 merupakan subtopic mengenai manipulasi stack untuk
direktori. Perintah dirs digunakan untuk melihat stact directory sedangkan
perintah mkdir digunakan untuk membuat folder baru, sesuai hasil percobaan
pada gambar di bab 3 terlihat bahwa nama marketing sales dan support telah jadi
folder.
Percobaan kesembilan berkaitan dengan Alias, dimana alias merupakan
mekanisme untuk memberi nama alias pada satu atau sekelompok instruksi.
Perintah $ alias digunakan untuk melihat alias yang sudah terdaftar pada sistem.
Sedangkan untuk membuat beberapa alias dapat dilakukan menggunakan perintah
$ alias del=’rm –i’ dan $ alias h=’history’. Selanjutnya hasil dari alias dapat
dilihat menggunakan perintah $ ls => $ del hasil => $ h | more. Dan untuk
menghapus menggunakan perintah $ unalias del.

KESIMPULAN

Berdasarkan hasil praktikum diatas dapat disimpulkan bahwa :


 Nano merupakan editor yang digunakan untuk menulisakan script dan untuk
menjadikan file executable dengan cara mengetikkan chmod 755
<nama_file> dan untuk menjalankan nya dengan perintah ./<nama_file>.
 Terdapat perintah tersendiri untuk menjalankan suatu script.
 Bash script merupakan file yang berisi koleksi program yang dapat
dieksekusi.
 Job merupakan sebuah eksekusi program yang diberikan kepada kernel.

Anda mungkin juga menyukai