Bekerja Dengan Bash Shell

 



LAPORAN PRAKTIKUM

SISTEM OPERASI  LINUX

=================================================

 

Tentang :

BEKERJA DENGAN BASH SHELL

 

Oleh :

 

                                  Nama                : Jeffri Aprian Purba

                                  NIM                  : 180342036

                                  Kelas                 : BM-5A

 

 

 

POLITEKNIK NEGERI JAKARTA

JURUSAN TEKNIK ELEKTRO

PRODI BROADBAND MULTIMEDIA

2020

  

 

I.                Tujuan

a.      Bisa mengetahui apa yang dimaksud dengan bash shell

b.     Dapat mengetahui perintah bash shell

c.      Bisa menjalankan perintah bash shell

 

II.             Teori Singkat

Pendahuluan

Apa itu shell ? shell adalah program (penterjemah perintah) yang menjembatani user dengan sistem operasi dalam hal ini kernel (inti sistem operasi), umumnya shell menyediakan prompt sebagai user interface, tempat dimana user mengetikkan perintah-perintah yang diinginkan baik berupa perintah internal shell (internal command), ataupun perintah eksekusi suatu file progam (eksternal command), selain itu shell memungkinkan user menyusun sekumpulan perintah pada sebuah atau beberapa file untuk dieksekusi sebagai program.

Macam - macam shell?

Tidak seperti sistem operasi lain yang hanya menyediakan satu atau 2 shell, sistem operasi dari keluarga unix misalnya linux sampai saat ini dilengkapi oleh banyak shell dengan kumpulan perintah yang sangat banyak, sehingga memungkinkan pemakai memilih shell mana yang paling baik untuk membantu menyelesaikan pekerjaannya, atau dapat pula berpindah-pindah dari shell yang satu ke shell yang lain dengan mudah, beberapa shell yang ada di linux antara lain:

·        Bourne shell(sh),

·        C shell(csh),

·        Korn shell(ksh),

·        Bourne again shell(bash),

·        dsb.

Masing - masing shell mempunyai kelebihan dan kekurangan yang mungkin lebih didasarkan pada kebutuhan pemakai yang makin hari makin meningkat, 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.versi bash shell yang saya gunakan adalah 2.04

[jeffri@linux$]echo $BASH_VERSION

bash 2.04.12(1)-release

Mungkin saat anda membaca dokumentasi ini versi terbaru dari bash sudah dirilis dengan penambahan feature yang lain.

 

III.           Langkah Kerja

Percobaan 1 : Profile

1.      1. File .bash profil dijalankan pada home direktori pemakai yang login.File .bash profile adalah hidden file , sehingga untuk melihatnya digunakan opsi a pada intriksi ls

Tampilan outputnya :

Ls –a

Analisa :

Perintah ls digunakan untuk melihat home directory. File .bash_profile adalah hidden file.

 

2.      2. File .bash_logout akan dieksekusi sesaat sebelum logout, berfungsi sebagai hose clearing jobs, artinya membersihkan semuanya , misalnya menghapus temporary file atau job lainnya . melihat file .bash logout dengan intruksi $cat .bash logout.

Tampilan outputnya :

$cat .bash_logout

Analisa :

Perintah ini digunakan untuk eksekusi sebelum logout dan menghapus temporary file dan job.

 

Percobaan 2 : Menggunakan feature bash history

1.      1. Bash shell menyimpan “history” perintah yang digunakan sebelumnya. Anda dapat mengakses history dalam beberapa cara. Cara paling mudah adalah menggunakan Panah Atas. Maka perintah sebelumnya akan ditampilkan.

Ta    Tampilan outputnya :

cd    Cd

        Ls –l


Analisa :

Menampilkan perintah sebelumnya yang pernah dibuat


2. Berikutnya, berikan Bash shell beberapa perintah untuk diingat. Masukan perintah berikut dan tekan Enter pada setiap baris.

$ cd

$ ls –l /etc

Tampilan outputnya :

ls -l

Whoami

Who


Analisa :
 Perintah ini digunakan untuk melihat semua perintah yang pernah dimasukkan.


3. Untuk memeriksa apakah perintah ini ditambahkan pada history, dapat menggunakan perintah history untuk melihat semua perintah yang pernah dimasukkan.

2.      History

      Tampilan Output :

Analisa :

Perintah ini digunakan untuk memeriksa apakah perintah ini ditambahakan pada history.


3.     4. Perintah $ !<nomor perintah>

        Contoh :

        !780

        Tampilan Outputnya:

Analisa :

Untuk menampilkan history dengan mengetikan nomor history yang kita kehendaki.


5. Perintah $ !?etc?

Sebelum dieksekusi :

Setelah dieksekusi :

Analisa :

Dipergunakan untuk mencari perintah dengan menyertakan perintah yang di inginkan misalnya !?etc? akan menjalankan perintah ls –l /etc yang sebelumnya pernah di gunakan.

 

5.      6. Perintah $ history

        Tampilan outputnya :

Analisa :

Digunakan untuk menampilkan perintah $ls –l/etc yang kedua bukan perintah $ !?etc? yang di jalankan sebelumnya.


7. Perintah $ !?wombat99?

Tampilan Output :

Analisa :

Dikarena tring tidak ditemukan pada perintah history maka akan muncul pesan not found seperti output tesebut.

 

8. Perintah $!who

Tampilan outputnya :

$!whoa
Tampilan outputnya:

Analisanya :

Perintah $!who yang dijalakan adalah perintah who

$whoa maka yang dijalankan adalah perintah whoami.


6.      9. cat /bin/bash | strings | grep shell | less

Sebelum dieksekusi:

Setelah dieksekusi :


Lalu tekan : Q untuk keluar

Perintah $^shell^alias^

Sebelum dieksekusi :

Setelah dieksekusi :

 Analisa :

Perintah tersebut untuk menggantikan string pada perintah history . Sedangkan perintah yang kedua untuk menampilkan kata “alias” , maka tidak perlu mengetik perintah yang panjang lagi ,tetapi cukup ketik ^shell6^alias^. Dan untuk menghentikannya cukup mengetikan Q. lansung kembali seperti semula.


Percobaan 3 : mengubah feature history bash

1.      1. Perintah $ Cd

        Tampilan Outputnya :

      

Analisa :

        Di file .bash_history menyimpanfile history yang terdapat pada home directory . untuk membukanya menggunakan perintah $cd.


2. Perintah $ tail .bash_history

Tampilan Outputnya :

Analisa :

Untuk melihat beberapa baris pada file .bash_history


3. Perintah $ history

Tampilan outputnya:

Analisa :

Untuk menampilakanbaris terakhir yang mana adalah perintah history dan baris sebelumnya adalah tail .bash_history perintah history bersifat up to date karena di simpan pada memory system.dan file terbaru akan terlihat.

2.      4. Perintah $ echo ‘ini perintah saya’

Tampilan Outputnya :

3.      Analisa :

      Perintah ini beguna untuk menampilkan tulisa ‘ini perintah saya’  


        5. Perintah $ history

        Tampilan outputnya :

Perintah $ tail .bash_history
Tampilan Outputnya :

 Analisa :

1.     Untuk melihat “ini perintah saya” dalam history.

2.     Untuk menampilkan yang berhubungan dengan bash.


4.      6. Perintah $ history | less

Sebelum dieksekusi :

Setelah dieksekusi :

Analisa :
untuk melihat perintah history terakhir pada screen.

5.      7. Perintah $ wc –l .bash_history

        Tampilan Outputnya :

Analisa :

Untuk melihat berapa banyak perintah history yang ada pada file.

 

6.      8. Perintah $ set | grep HISTSIZE

        Tampilan Outputnya :

Analisa :

 Untuk melihat jangkauan (limit) perintah history.


7.      9. Perintah $ echo ‘HISTSIZE=5000’ >> .bashrc

        Tampilan Outputnya :

Analisa :
Untuk memperbesar jangkauan file history

10. Cek kembail $ set | grep HISTSIZE

 

Percobaan 4 : mengubah prompt shell

1.      1. Ketikan penrintah berikut $  PS1=’\t:’

Tampilan Outputnya :

Analisa :

Untuk menampilkan waktu system dalam format 24 jam sebagai prompt Bash.JJ:MM:DD.

 

2. Ketikan penrintah berikut $ PS1='\t:'

Tampilan outputnya :


           Analisa :

            Untuk menampilkan format 12 jam dengan indikator am dan pm.

        3Ketikan penrintah berikut  $ PS1=’\w:’

            Tampilan Outputnya :

Analisa :

        Untuk menampilkan  “ ~:”

  C    4. Ketikan perintah berikut  $ cd /usr/sbin

            Tampilan outputnya :

    Analisa :
    untuk melihat prompt /usr/sbin.

 

3.      5.  Ketikan penrintah berikut  $PS1=’\W:’

        Tampilan Output :

Analisa :

untuk melihat prompt sbin.

 

4.      6. Ketikan penrintah berikut  $ echo ‘Hello

        >'

        Tampilan outputnya :

Analisa :

 Simbol lebih besar dari (>) muncul. Hal ini memberitahukan bahwa BASH menunggu Anda menyelesaikan perintah.


5.      7. Ketikan perintah berikut  $PS2=’Selesai memasukkan perintah Anda:’

        Tampilan outputnya :

Analisa :

Ketik penutup quote (‘) dan tekan Enter. Perintah ini akan menyelesaikan prompt PS2, kata ”Hello”, muncul diikuti dengan prompt PS1 pada baris baru.


8. Ketikan penrintah berikut  $ echo ’Hello

Selesai masukan perintah anda

Tampilan outputnya :

Analisa :

Perintah ini digunakan untuk menampilkan prompt PS1.


9. Ketikan penrintah berikut  $PS1=’\033[0;34m\w\$ \033[0;37m’

Tampilan outputnya :

Analisa :

Perintah ini digunakan untuk menampilkan prompt Bash berwana


10. Ketikan penrintah berikut  $PS1=’\033[0;31m\w\033[0;32m\$ \033[0;37m’

Tampilan outputnya :

Analisa :

Untuk mendapatkan prompt warna merah.

30=hitam, 31=merah, 32=hijau, 34=biru, 35=ungu, 36=cyan, 37=putih.


11. Ketikan penrintah berikut  $ PS1=’\033[0;34m\w\033[0;32m\$ \033[0;37m’

Tampilan outputnya :

Analisa :

Dengan perintah tersebut kita dapat mengkoloborasikan warna sesuka hati kita


12. Ketikan penrintah berikut  $PS1=’\033[7;34m\w\033[7;32m\$ \033[0;37m’

Tampilan outputnya :

Analisa :

Dengan perintah tersebut kita dapat membuat $ menjadi besar atau seperti di blok

13. Ketikan penrintah berikut  $PS1=’\033[5;34m\w\033[5;32m\$ \033[0;37m’

Tampilan outputnya :

Analisa :

Untuk menampilkan prompt dengan warna berkebalikan dengan mengganti atribut control :7.


14. Ketikan penrintah berikut  $ PS1=’\033[5;34m\w\033[5;32m\$ \033[0;37m’

Tampilan outputnya :

Analisa :

Untuk menampilkan prompt berkedip, atribut control diganti 5.

 

Percobaan 5 : menambahkan otomasisasi ke Promp Shell

1.      1. Perintah $ cd ~

        Tampilan outputnya :

Analisis :

     Perintah tersebut untuk masuk ke direktory home.


        2. Perintah $echo ’sort ~/list > ~/r13; mv ~/r13 ~/list’ > ~/sorter

        Tampilan outputnya :

Analisa :

      Perintah tersebut di peruntukan untuk membuat  file. Sederhana.


        3. Perintah $ chmod +x sorter

        Tampilan outputnya :

    Analisa :

         Perintah tersebut di gunakan untuk membua file skrip menjadi file executable.


        4. Perintah $PROMPT_COMMAND=~/sorter

        Tampilan outputnya:

Analisa :

        Untuk menjalankan program sorter diatas setiap shell Bash menampilkan prompt PS1.


        5. Perintah $echo ’John Smith:13001’>>list

        Tampilan outputnya :

    Analisa :

           Untuk membuat file secara otomatis


6        6. Perintah $cat list

            Tampilan outputnya :

        Analisa :

              Perintah ini di gunakan untuk melihat isi file list yang telah di buat.

                echo ’afit:13002’>>list

                $ echo ’josu:13003’>>list

                $ echo ’roy:13004’>>list

                $ echo ’muha:13005’>>list

                $ echo ’indah:13006’>>list


            7.  Perintah $echo ’anita:13002’>>list

                $echo ’samantha:13003’>>list

                $echo ’patrik:13004’>>list

                $echo ’sponse bob:13005’>>list

                $echo ’lisa:13006’>>list

                $echo ’squid:13007’>>list

                Tampilan outputnya :

            Analisa :

                  untuk melihat isi file list yang telah dibuat.

                  Perintah $ cat list

                  Tampilan outputnya :

            Analisa :
            untuk menampilkan isi file list secara urut sesuai nama abjad.

8. Perintah $PROMPT_COMMAND=
    Tampilan outputnya :
    
     Analisa :
     Untuk berhenti menjalankan program sorter.


Percobaan 6 : Membuat Bash-Script dan menjalankannya
1.      Membuat file p1.sh
        $ vi p1.sh
        echo “program bash script”

                          
                            Analisis :

Gambar di atas merupakan perintah membuat Bash-Script dan menjalankannya. Membuat file p1.sh menggunakan perintah vi p1.sh dan echo “program bash script”, maka akan muncul output menampilkan program bash script.

 

2.      Mengubah program menjadi executable

$ ls -l p1.sh

$ chmod +x p1.sh

$ ls –l p1.sh

 



Analisis :

Gambar di atas merupakan perintah membuat Bash-Script dan menjalankannya. Perintah ls -l p1.sh digunakan untuk menampilkan semua file p1.sh. Perintah chmod +x p1.sh digunakan untuk mengubah menjadi executable. Perintah ls –l p1.sh digunakan menampilkan file untuk meng cek kembali file, tanda tulisan berwarna ijo artinya telah diubah menjadi excutable.


3.      Menjalankan script

$ bash p1.sh

$ sh p1.sh

$ . p1.sh

$ . /p1.sh

 


Analisis :

Gambar di atas merupakan perintah membuat Bash-Script dan menjalankannya. Semua perintah diatas telah dicoba dan memiliki hasiil output yang sama.


4.      Konvensi dalam pembuatan script shell dinyatakan sebagai #!/bin/bash. Tambahkan pada file p1.sh konvensi tersebut

$ vi p1.sh #!/bin/bash

echo “program bash script”

 



Analisis :

Gambar di atas merupakan perintah membuat Bash-Script dan menjalankannya. Konvensi dalam pembuatan script shell dinyatakan sebagai #!/bin/bash. Tambahkan pada file p1.sh konvensi tersebut dengan tulisan “Program 2 bash script”.


5.      Buatlah file p2.sh

$ vi p2.sh #!/bin/bash

echo “Program 2 bash scrip

 


Analisis :

Gambar di atas merupakan perintah membuat Bash-Script dan menjalankannya. Konvensi dalam pembuatan script shell dinyatakan sebagai #!/bin/bash. Tambahkan pada file p2.sh konvensi tersebut dengan tulisan “Program 2 bash script”.


6.      Menjalankan beberapa program shell dalam satu baris instruksi yang dipisahkan dengan tanda ;

$ cat p1.sh ; cat p2.sh

$ ./p1.sh ; ./p2.sh



Analisis :

Gambar di atas merupakan perintah membuat Bash-Script dan menjalankannya. Menjalankan beberapa program shell dalam satu baris instruksi yang dipisahkan dengan tanda ; dengan perintah cat p1.sh ; cat p2.sh dan ./p1.sh ; ./p2.sh.


Percobaan 7 : Job Control

1.       Proses foreground

$ ps x

 


Analisis

Gambar di atas merupakan perintah Job Control. Proses foreground dengan menggunakan perintah ps x , maka akan muncul output daftar file yang sedang dijalanjan.

 

2.       Proses background

$ ps x > hasil &

 


Analisis :

Gambar di atas merupakan perintah Job Control. Proses background dengan menggunakan perintah ps x > hasil & , maka akan muncul  output jumlah semua proses yang sedang berjalan.


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

$ jobs

 


Analisis :

Gambar di atas merupakan perintah Job Control. Setiap job mempunyai PID yang tunggal (unique). Untuk melihat jobs yang aktif dengan menggunakan perintah jobs, maka akan muncul output proses yang berjalan yaitu ps x > hasil tadi.


4.       Buatlah file ploop.sh. file ini tidak akan pernah berhenti kecuali ditekan CTRL+C

$ vi ploop.sh #!/bin/bash while [true] do

sleep 10 echo “Hallo” done



Analisis :

Gambar di atas merupakan perintah Job Control. Membuat file ploop.sh. file ini tidak akan pernah berhenti kecuali ditekan CTRL+C dengan menggunakan perintah $ vi ploop.sh kemudian ketikkan while [true], do, sleep 10, echo “Hallo”, done.


5.   Buatlah file ploop.sh menjadi executable. Jalankan program, akan ditampilkan kata Hallo setiap 10 detik. Untuk keluar program, tekan CTRL-C (^C)

$ chmod +x ploop.sh

$ ./ploop.sh

 


Analisis :

Gambar di atas merupakan perintah Job Control. Membuat file ploop.sh menjadi executable. Jalankan program, akan ditampilkan kata Hallo setiap 10 detik. Untuk keluar program, tekan CTRL-C (^C) dengan menggunakan perintah chmod +x ploop.sh dan ./ploop.sh, maka akan muncul output dengan menampilkan kata hallo berulang kali setiap 10 detik.

 

Percobaan 8 : Manipulasi stack untuk Direktori

1.       Instruksi dirs digunakan untuk melihat stack direktori, pada output hanya ditampilkan direktori home ~

$ dirs

 


Analisis :

Gambar di atas merupakan perintah Manipulasi stack untuk Direktori. Instruksi dirs digunakan untuk melihat stack direktori, pada output hanya ditampilkan direktori home ~, maka akan muncul output direktori yang diingat.


2.       Membuat 3 buat direktori

$ mkdir marketing sales support

 


Analisis :

Gambar di atas merupakan perintah yaitu Manipulasi stack untuk Direktori. Perintah diatas merupakan cara untuk membuat tiga direktori dengan satu perintah.


3.       Instruksi dirs digunakan untuk melihat stack direktori, pada output hanya ditampilkan direktori home ~

$ dirs

 



Analisis :

Gambar di atas merupakan perintah Manipulasi stack untuk Direktori. Instruksi dirs digunakan untuk melihat stack direktori, pada output hanya ditampilkan direktori home ~, maka akan muncul output direktori yang diingat.

 

LATIHAN

1.       Eksekusi seluruh profile yang ada:

a.     Edit file profile /etc/profile dan tampilkan pesan sebagai berikut:

echo ‘profile dari /etc/profile’


  


Analisis :

Tampilan diatas merupakan jawaban nomor 1 a. Perintah vi /etc/profile berfungsi untuk masuk ke prompt script /etc/profile, untuk mengedit pesan menggunakan perintah i, kemudian inputkan perintah echo ‘profile dari /etc/profile’.

 

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

/home/student/.bash_profile

/home/.student/.bash_login

/home/student/.profile

/home/student/.bashrc




Analisis :

Tampilan diats merupakann jawaban dari latihan 1 b. Perintah vi digunakan untuk masuk ke teks editor untuk mengedit file konfigurasi sistem, membuat script shell, membuat program, dan sebagainya.

 

c.       Ganti nama /home/student dengan nama anda sendiri. Pada setiapfile tersebut, cantumkan   instruksi           echo,             misalnya  pada

/home/student/.bash_profile:

echo “Profile dari .bash_profile”

  


$ vi /home/jeffri/.bash_profile

 


$ vi /home/jeffri/.profile

 


$ vi /home/jeffri/.bashrc

 


Analisis

Gambar di atas merupakan latihan nomer 1 c, yaitu menambahkan instruksi pada file /home/jeffri/.bash_profile dengan instruksi echo “Profile dari .bash_profile”, kemudian cara menginputakan instruksi dengan i, kemudian esc untuk mengakhiri perintah insert, lalu perintah

:wq untuk menyimpan dan keluar dari text editor. Pada /home/. pebri.ramdani    /.bash_login    dengan    instruksi    echo    “Profile  dari

.bash_login”, kemudian cara menginputakan instruksi dengan i, kemudian esc untuk mengakhiri perintah insert, lalu perintah :wq untuk menyimpan  dan  keluar  dari  text  editor.  Pada   /home/   pebri.ramdani /.profile dengan instruksi echo “Profile dari .profile”, kemudian cara menginputakan  instruksi  dengan  i,  kemudian  esc  untuk  mengakhiri perintah insert, lalu perintah :qa! untuk menyimpan dan keluar dari text editor. Pada /home/ pebri.ramdani /.bashrc dengan instruksi echo “Profile dari .bashrc”, kemudian cara menginputakan instruksi dengan i, kemudian esc untuk mengakhiri perintah insert, lalu perintah :qa! untuk menyimpan dan keluar dari text editor.

 

d.       Lakukan hal yang sama untuk file lainnya, sesuaikan tampilan dengan nama file yang bersangkutan.

SUDAH DIKERJAKAN PADA POINT B DAN C

 

 

2.    Jalankan instruksi subtitute user, kemudian keluar dengan perintah exit sebagai berikut:

$ su student

$ exit



Analisis :

Tampilan diatas merupakan jawaban no 2, yaitu perintah $ su student digunakan untuk pindak ke super user, sistem meminta password admin. Pada perintah tersebut pada file .bashrc sudah dimodifikasi sebelumnya sehingga instruksi echo terpanggil bila menggunakan perintah SU, untuk mengakhiri menggunakan Perintah $ exit.

Kemudian gunakan opsi – sebagai berikut:

$ su – student

$ exit

 



Analisis :

Tampilan diatas merupakan jawaban no 2, yaitu perintah $ su - student digunakan untuk pindak ke super user, sistem meminta password admin. Pada perintah tersebut akan menjalankan dua file yaitu file .bashrc dan file .bash_profile yang keduanya sudah dimodifikasi sebelumnya sehingga instruksi echo terpanggil bila menggunakan perintah SU, untuk mengakhiri menggunakan Perintah $ exit. jadi yang membedakannya yaitu memunculnya jumlah file yang dibuka dan mengakhiri filenya dengan akhiran logout.


Jelaskan perbedaan kedua utilitas tersebut.

Sudah terdapat pada analisis diatas 


3.       Logout

a.       Edit file .bash_logout, tampilkan pesan dan tahan selama 5 detik, sebelum eksekusi logout

echo “Terima kasih atas sesi yang diberikan” sleep 5

clear

            

            $ vi .bash_logout


            $ chmod +x .bashk_logout


            $ ./.bash_logout




Analisis :

Tampilan diatas merupakan jawaban no3, yaitu membuat program logout menggunakan vi editor. Perintah $ vi .bash_logout digunakan untuk membuat text editor membuat program. Kemudian insert echo “Terima kasih atas sesi yang diberikan”

sleep 5 clear

dengan menggunakan i, setelah selesai akhiri dan simpan dengan perintah

:wq.

Perintah $ chmod +x .bashk_logout berfungsi untuk merubah file menjadi excutable.    Perintah    $    ./.bash_logout     untuk    mengeksekusi     file

.bash_logout.


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



Analisis :

Tampilan diatas merupakan jawaban no3, yaitu mengedit program logout menggunakan vi editor. Perintah $ vi .bash_logout digunakan untuk membuat text editor membuat program. Kemudian edit text editor menjadi insert echo “Terima kasih atas sesi yang diberikan”

sleep 4 clear

dengan menggunakan i, setelah selesai akhiri dan simpan dengan perintah

:wq.

Perintah $ chmod +x .bashk_logout berfungsi untuk merubah file menjadi excutable.    Perintah    $    ./.bash_logout    untuk    mengeksekusi     file

.bash_logout.


4.       History

a.       Ganti nilai HISTSIZE dari 1000 menjadi 20

$ HISTSIZE=20

$ h

 

 





Analisis :

Gambar di atas merupakan latihan nomer 4 yaitu tentang history. Ketikkan perintah set | grep HISTSIZE untuk mengecek jumlah history sebelumnya kemudian ubah history tersebut menjadi 20 menggunakan perintah echo, >> dan file .bashrc. Setelah itu cek kembali apakah sudah berubah atau belum menggunakan perintah set | grep HISTSIZE, maka akan muncul output seperti gambar di atas.

 

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

$ !-5

 

 

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

$ !!


d.       Ulangi instruksi pada history buffer nomor tertentu, misalnya nomor

!150

$ !150

 


Analisis :

Gambar di atas merupakan latihan nomer 4 yaitu tentang history. Perintah !-5 digunakan untuk menampilkan atau mengeksekusi kembali history pada 5 terakhir perintah di history. Perintah !! digunakan mengulangi instruksi yang terakhir. Gunakan juga ^P dan ^N untuk bernavigasi pada history buffer. Perintah !150 digunakan untuk memanggil perintah dari history dengan nomor PID 150.


e.       Ulangi instruksi dengan prefix “ls”

$ !ls

$ !?ls?

Jelaskan perbedaan instruksi di atas (sudah pada analisis)

 



Analisis :

Gambar di atas merupakan latihan nomer 4 yaitu tentang history. Perintah prefiks ls ini akan menghasilkan perintah yang sama yaitu

  

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

PS1=’>’

Export PS1

Eksperimen hasil PS1:

$ PS1=”\! >”

69 > PS1=”\d >”

Mon Sep 23 > PS1=”\t >” 10:10:20 > PS1=”Saya=\u >”

Saya=stD02001 > PS1=”\w >”

~ > PS1=\h >”





                                Analisis :

Gambar di atas merupakan latihan nomer 5 yaitu tentang prompt string. Edit file .bash_profile, ganti prompt PS1 dengan ‘>’. Instruksi export diperlukan dengan parameter nama variabel tersebut, agar perubahan variabel PS1 dikenal oleh semua shell, maka akan muncul output seperti gambar di atas. Ada beberapa tampilan prompt PS1 yaitu dengan nomor perintah (\!), date (\d), time (\t), who=user(\u), working directory (\w).

 

b.       Ubahlah warna shell prompt dengan warna biru dan berkedip



Analisis :

Gambar di atas merupakan latihan nomer 5 yaitu tentang prompt string. Mengubah warna shell prompt dengan warna biru dan berkedip menggunakan perintah seperti pada gambar di atas, maka output tulisan akan berkedip.

 

 

6.       Bash script

a.       Buat 3 buah script p1.sh, p2.sh, p3.sh dengan isi masing-masing:

P1.sh #!/bin/bash

echo “Program p1” ls –l

 

$ vi p1.sh #! /bin/bash

echo “Program p1” ls –l

$ vi p2.sh #! /bin/bash

echo “Program p2” who

$ vi p3.sh #! /bin/bash





Analisis :

Tampilan diatas merupakan jawaban nomor 6a, yaitu membuat program file menggunakan vi editor. Pada Program $ vi p1.sh diinputkan script dengan menekan i pada vi editor. Lalu isi script berikut :

#! /bin/bash

echo “Program p1”

 

 

setelah selesai penginputan takan esc untuk berhenti dan tekan :wq untuk menyimpan dan keluar.

Pada Program $ vi p2.sh diinputkan script dengan menekan i pada vi editor. Lalu isi script berikut :

#! /bin/bash

echo “Program p2” who

setelah selesai penginputan takan esc untuk berhenti dan tekan :wq untuk menyimpan dan keluar.

Pada Program $ vi p3.sh diinputkan script dengan menekan i pada vi editor. Lalu isi script berikut :

#! /bin/bash

echo “Program p3” ps x


b.       Jalankan script tersebut sebagai berikut dan perhatikan hasilnya:

$ ./p1.sh ; ./p3.sh ; ./p2.sh




Analisis :

Gambar di atas merupakan latihan nomer 6 yaitu tentang bash script. Perintah ./p1.sh ; ./p3.sh ; ./p2.sh untuk menampilkan isi dari script tersebut, maka akan muncul output dari hasil eksekusi pada vi editor.

Pada perintah ./p3.sh ; ./p2.sh izin di tolak(program tidak jalan), karena file tersebut belum di rubah menjadi excutable. Dengan menggunakan perintah chmod +x ./p3.sh ; ./p2.sh maka program tersebut bisa di

$ ./p1.sh &

 

 


Analisis :

Gambar di atas merupakan latihan nomer 6 yaitu tentang bash script. Perintah ./p1.sh &, berfungsi untuk menampilkan file script p1.sh dengan proses background.

 

$ ./p1.sh $ ./p2.sh & ./p3.sh &


 

 

 

Analisis :

Gambar di atas merupakan latihan nomer 6 yaitu tentang bash script. Perintah $ ./p1.sh $ ./p2.sh & ./p3.sh & berfungsi untuk menampilkan ketiga script secara bersamaan dengan proses background.

$ (./p1.sh ; ./p3.sh) &

 


Analisis :

Gambar di atas merupakan latihan nomer 6 yaitu tentang bash script. Perintah $ ( ./p1.sh ; ./p3.sh ) & berfungsi untuk menampilkan file script p1.sh dan p3.sh dengan proses background.

7. Jobs

a.       Buat shell- script yang melakukan loop dengan nama pwaktu.sh, setiap 10 detik, kemudian menyimpan tanggal dan jam pada file hasil.

#!/bin/bash

while [true]

do

Date >> hasil

sleep 10

done

 





Analisis :

Gambar di atas merupakan latihan nomer 7 yaitu tentang jobs. Perintah vi pewaktu.sh berfungsi untuk membuat program dan akan masuk pada tampilan vi editor. Tekan i untuk insert script seperti berikut

#!/bin/bash while [ true ]

do

date >> hasil sleep 10 done

setelah selesai menyisipkan script tekan esc untuk mengakhiri penyisipan, dan tekan :wq untuk keluar dari vi editor dan menyimpannya.

Perintah chmod +x pewaktu.sh berfungsi untuk mengubah file menjadi excutable, kemudian jalankan program dengan menggunakan perintah

./pewaktu.sh. takan ctrl+z untuk berhenti. Dikarenakan pada script program dibelokan pada file hasil. t shell- script yang melakukan loop dengan nama pwaktu.sh, setiap 10 detik, kemudian menyimpan tanggal dan jam pada file hasil. Kemudian tampilkan hasil dengan perintah cat hasil maka hasil dari pengulangan pada program ditampilkan.

b.       Jalankan sebagai background; kemudian jalankan satu program (utilitas find) di background sebagai berikut:

$ jobs

$ find / -print > files 2>/dev/null &

$ jobs

 

Analisis :

Gambar di atas merupakan latihan nomer 7 yaitu tentang jobs. Perintah jobs pertama akan menampilkan jobs yaitu dari program ./pwaktu.sh dengan status terhenti. Kemudian ditambahkan lagi satu program utilitas find di bakground. Maka apabila di cek kembali hanya jobs find yang akan running. Sementara yang lainnya dalam keadaan terhenti.

c.       Jadikan program ke 1 sebagai foreground, tekan ^Z dan kembalikan program tersebut ke background

$ fg %1

$ bg

 


Analisis :

Gambar di atas merupakan latihan nomer 7 yaitu tentang jobs. Jobs dengan nomor perintah 1 yaitu ./pwaktu.sh akan dijalankan sebagai program foregorund dengan menggunakan perintah fg %1. Kemudian dengan menekan ctrl + z maka program akan stopped. Kemudian program

 

 

d.       Stop program background dengan utilitas kill

$ ps x

$ kill [Nomor PID]

 



Analisis :

Gambar di atas merupakan latihan nomer 7 yaitu tentang jobs. Perintah perintah ps x berfungsi untuk melihat proses status foreground, kemudian untuk mengentikan atau stop program pada background dengan perintah kill 4332 maka proses bash dengan no PID 4332 terhenti.

IV.           Pembahasan

Pada bash shell kita bisa bermain dengan history. Misalnya kita bisa memanggil kembali perintah yang tersimpan di history, yaitu dengan perintah !<nomor perintah di history>

Maka perintah dengan nomor tersebut akan dijalankan.

Untuk melihat perintah di dalam history sedikit demi sedikit kita bisa menggunakan perintah history | less. Maka history akan ditampilkan sedikit demi sedikit.

Jika suatu perintah yang kita masukkan tidak lengkap, misalnya seperti pada langkah percobaan echo ‘hello . maka akan diberi tahu dengan tanda >, kemudian kita bisa mengubah pemberitahuan tanda > dengan tulisan. Caranya yaitu menggunakan perintah PS2. Ketikkan PS2=’selesai masukkan perintah Anda:’, maka ketika kita tidak selesai memasukkan suatu perintah akan diberitahu dengan tulisan pada tanda > tadi akan diganti dengan tulisan selesai masukkan perintah Anda.

 

V.              Kesimpulan

a.      Shell merupakan penterjemah perintah

b.     Bash shell biasanya digunakan pada linux

c.      Perintah pada bash shell untuk melihat perintah yang telah dibuat sebelumnya yaitu history

d.     Feature prompt shell bisa diubah seperti color setting strings. Seperti contoh bisa menggunakan warna biru, merah dan lain-lain.

 

VI.            Referansi

http://pemula.linux.or.id/programming/bash-shell.html

Komentar