Laporan Praktikum Sistem Operasi Modul 6 dan 7
=======================================================================
LAPORAN PRAKTIKUM
PEMROGRAMAN SISTEM OPERASI
MODUL 6 DAN 7
(Pengenalan Shell Programing Dan Text Editor)
Disusun Oleh:
Nama : Usman JayusMan
Kelas: TI 2018 A
NIM: 20180810096
FAKULTAS ILMU KOMPUTER
UNIVERSITAS KUNINGAN
2019
=======================================================================
1.LANDASAN MATERI
ketika kita mempelajari linux, maka kita akan bertemu dengan Shell Programing Dan Text editor,
- 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),
- Teks editor berfungsi untuk membuat sebuah file teks dimana teks tersebut bisa berupa teks biasa atau sebuah skrip. Di Linux terdapat beberapa paket program yang berfungsi sebagai teks editor, seperti vi, vim, emac, gedit dll. Namun secara umum teks editor dibagi menjadi dua jenis, yang pertama teks editor berbasi shell, dan yang kedua berbasis GUI.
- 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),
- Teks editor berfungsi untuk membuat sebuah file teks dimana teks tersebut bisa berupa teks biasa atau sebuah skrip. Di Linux terdapat beberapa paket program yang berfungsi sebagai teks editor, seperti vi, vim, emac, gedit dll. Namun secara umum teks editor dibagi menjadi dua jenis, yang pertama teks editor berbasi shell, dan yang kedua berbasis GUI.
2.DASAR TEORI
- Pemrograman Shell ?
Yaitu menyusun atau mengelompokkan beberapa perintah shell (internal atupun eksternal command) menjadi kumpulan perintah yang melakukan tugas tertentu sesuai tujuan penyusunnya. Kelebihan shell di linux dibanding sistem operasi lain adalah bahwa shell di linux memungkinkan kita untuk menyusun serangkaian perintah seperti halnya bahasa pemrograman (interpreter language), melakukan proses I/O, menyeleksi kondisi, looping, membuat fungsi, dsb. adalah proses - proses yang umumnya dilakukan oleh suatu bahasa pemrograman, jadi dengan shell di linux kita dapat membuat program seperti halnya bahasa pemrograman, untuk pemrograman shell pemakai unix atau linux menyebutnya sebagai script shell.
- Kebutuhan Dasar
Sebelum mempelajari pemrograman Bash shell di linux sebaiknya anda telah mengetahui dan menggunakan perintah - perintah dasar shell baik itu internal command yang telah disediakan shell maupun eksternal command atau utility, seperti
cd, pwd, times, alias, umask, exit, logout, fg, bg, ls, mkdir, rmdir, mv, cp, rm, clear, ...
- utilitas seperti
cat, cut, paste, chmod, lpr,...
- redirection (cara mengirim output ke file atau menerima input dari file), menggunakan operator redirect
>, >>, <, <<,
contohnya:
ls > data
hasil ls dikirim ke file data, jika file belum ada akan dibuat tetapi jika sudah ada isinya akan ditimpa.
ls >> data
hampir sama, bedanya jika file sudah ada maka isinya akan ditambah di akhir file.
cat < data
file data dijadikan input oleh perintah cat
- pipa (output suatu perintah menjadi input perintah lain), operatornya :
|
, contoh:
ls -l | sort -s
ouput perintah ls -l (long) menjadi input perintah sort -s (urutkan secara descending), mending pake ls -l -r
saja :-)
ls -l | sort -s | more
cat <data | sort > databaru
- Wildcard dengan karakter
*, ?, [ ]
, contohnya:
ls i*
tampilkan semua file yang dimulai dengan i
ls i?i
tampilkan file yang dimulai dengan i, kemudian sembarang karakter tunggal, dan diakhiri dengan i
ls [ab]*
tampilkan file yang dimulai dengan salah satu karakter a atau b .
cd, pwd, times, alias, umask, exit, logout, fg, bg, ls, mkdir, rmdir, mv, cp, rm, clear, ...
cat, cut, paste, chmod, lpr,...
>, >>, <, <<,
contohnya:ls > data
hasil ls dikirim ke file data, jika file belum ada akan dibuat tetapi jika sudah ada isinya akan ditimpa.
ls >> data
hampir sama, bedanya jika file sudah ada maka isinya akan ditambah di akhir file.
cat < data
file data dijadikan input oleh perintah
cat
|
, contoh:ls -l | sort -s
ouput perintah ls -l (long) menjadi input perintah sort -s (urutkan secara descending), mending pake
ls -l -r
saja :-)ls -l | sort -s | more
cat <data | sort > databaru
*, ?, [ ]
, contohnya:ls i*
tampilkan semua file yang dimulai dengan i
ls i?i
tampilkan file yang dimulai dengan i, kemudian sembarang karakter tunggal, dan diakhiri dengan i
ls [ab]*
tampilkan file yang dimulai dengan salah satu karakter a atau b .
- Simple Bash Script
Langkah awal sebaiknya periksa dulu shell aktif anda, gunakan perintah ps (report process status)
[usman@linux$]ps
PID TTY TIME CMD
219 tty1 00:00:00 bash
301 tty1 00:00:00 ps
bash adalah shell aktif di system saya, jika disystem anda berbeda misalnya csh
atau ksh
ubahlah dengan perintah change shell
[usman@linux$]chsh
Password:
New shell [/bin/csh]:/bin/bash
Shell changed
atau dengan mengetikkan bash
[usman@linux$]bash
sekarang coba anda ketikkan perintah dibawah ini pada prompt shell
echo "Script shell pertamaku di linux"
[usman@linux$]echo "Script shell pertamaku di linux"
Script shell pertamaku di linux
string yang diapit tanda kutip ganda (double quoted) akan ditampilkan pada layar anda, echo
adalah statement (perintah) built-in bash yang berfungsi menampilkan informasi ke standard output yang defaultnya adalah layar. jika diinginkan mengulangi proses tersebut, anda akan mengetikkan kembali perintah tadi, tapi dengan fasilitas history cukup menggunakan tombol panah kita sudah dapat mengulangi perintah tersebut, bagaimana jika berupa kumpulan perintah yang cukup banyak, tentunya dengan fasilitas hirtory kita akan kerepotan juga mengulangi perintah yang diinginkan apalagi jika selang beberapa waktu mungkin perintah-perintah tadi sudah tertimpa oleh perintah lain karena history mempunyai kapasitas penyimpanan yang ditentukan. untuk itulah sebaiknya perintah-perintah tsb disimpan ke sebuah file yang dapat kita panggil kapanpun diinginkan.
coba ikuti langkah - langkah berikut:
- Masuk ke editor anda, apakah memakai vi,pico,emacs,dsb...
- ketikkan perintah berikut
#!/bin/bash
echo "Hello, apa khabar"
- simpan dengan nama file tes
- ubah permission file tes menggunakan
chmod
[usman@linux$]chmod 755 tes
- jalankan
[usman@linux$]./tes
kapan saja anda mau mengeksekusinya tinggal memanggil file tes tersebut, jika diinginkan mengeset direktory kerja anda sehingga terdaftar pada search path ketikkan perintah berikut
PATH=$PATH:.
setelah itu script diatas dapat dijalankan dengan cara
[usman@linux$]tes
Hello, apa khabar
tanda #!
pada /bin/bash
dalam script tes adalah perintah yang diterjemahkan ke kernel linux untuk mengeksekusi path yang disertakan dalam hal ini program bash
pada direktory /bin
, sebenarnya tanpa mengikutkan baris tersebut anda tetap dapat mengeksekusi script bash, dengan catatan bash adalah shell aktif. atau dengan mengetikkan bash pada prompt shell.
[usman@linux$]bash tes
tentunya cara ini kurang efisien, menyertakan path program bash diawal script kemudian merubah permission file sehingga dapat anda execusi merupakan cara yang paling efisien.
Sekarang coba kita membuat script shell yang menampilkan informasi berikut:
- Waktu system
- Info tentang anda
- jumlah pemakai yang sedang login di system
contoh scriptnya:
#!/bin/bash
#myinfo
#membersihkan tampilan layar
clear
#menampilkan informasi
echo -n "Waktu system :"; date
echo -n "Anda :"; whoami
echo -n "Banyak pemakai :"; who | wc -l
sebelum dijalankan jangan lupa untuk merubah permission file myinfo sehingga dapat dieksekusi oleh anda
[usman@linux$]chmod 755 myinfo
[fajar@linux$]./myinfo
Waktu system : Sat Nov 25 22:57:15 BORT 2001
Anda : fajar
Banyak pemakai : 2
tentunya layout diatas akan disesuaikan dengan system yang anda gunakan statement echo
dengan opsi -n
akan membuat posisi kursor untuk tidak berpindah ke baris baru karena secara default statement echo
akan mengakhiri proses pencetakan ke standar output dengan karakter baris baru (newline), anda boleh mencoba tanpa menggunakan opsi -n, dan lihat perbedaannya. opsi lain yang dapat digunakan adalah -e
(enable), memungkinkan penggunaan backslash karakter atau karakter sekuen seperti pada bahasa C atau perl, misalkan :
echo -e "\abunyikan bell"
jika dijalankan akan mengeluarkan bunyi bell, informasi opsi pada statement echo
dan backslash karakter selengkapnya dapat dilihat via man di prompt shell.
[usman@linux$]man echo
Langkah awal sebaiknya periksa dulu shell aktif anda, gunakan perintah ps (report process status)
[usman@linux$]ps
PID TTY TIME CMD
219 tty1 00:00:00 bash
301 tty1 00:00:00 ps
bash adalah shell aktif di system saya, jika disystem anda berbeda misalnya
csh
atau ksh
ubahlah dengan perintah change shell
[usman@linux$]chsh
Password:
New shell [/bin/csh]:/bin/bash
Shell changed
atau dengan mengetikkan
bash
[usman@linux$]bash
sekarang coba anda ketikkan perintah dibawah ini pada prompt shell
echo "Script shell pertamaku di linux"
[usman@linux$]echo "Script shell pertamaku di linux"
Script shell pertamaku di linux
string yang diapit tanda kutip ganda (double quoted) akan ditampilkan pada layar anda,
echo
adalah statement (perintah) built-in bash yang berfungsi menampilkan informasi ke standard output yang defaultnya adalah layar. jika diinginkan mengulangi proses tersebut, anda akan mengetikkan kembali perintah tadi, tapi dengan fasilitas history cukup menggunakan tombol panah kita sudah dapat mengulangi perintah tersebut, bagaimana jika berupa kumpulan perintah yang cukup banyak, tentunya dengan fasilitas hirtory kita akan kerepotan juga mengulangi perintah yang diinginkan apalagi jika selang beberapa waktu mungkin perintah-perintah tadi sudah tertimpa oleh perintah lain karena history mempunyai kapasitas penyimpanan yang ditentukan. untuk itulah sebaiknya perintah-perintah tsb disimpan ke sebuah file yang dapat kita panggil kapanpun diinginkan.
coba ikuti langkah - langkah berikut:
- Masuk ke editor anda, apakah memakai vi,pico,emacs,dsb...
- ketikkan perintah berikut
#!/bin/bash echo "Hello, apa khabar"
- simpan dengan nama file tes
- ubah permission file tes menggunakan
chmod
[usman@linux$]chmod 755 tes
- jalankan
[usman@linux$]./tes
kapan saja anda mau mengeksekusinya tinggal memanggil file tes tersebut, jika diinginkan mengeset direktory kerja anda sehingga terdaftar pada search path ketikkan perintah berikut
PATH=$PATH:.
setelah itu script diatas dapat dijalankan dengan cara
[usman@linux$]tes
Hello, apa khabar
tanda
#!
pada /bin/bash
dalam script tes adalah perintah yang diterjemahkan ke kernel linux untuk mengeksekusi path yang disertakan dalam hal ini program bash
pada direktory /bin
, sebenarnya tanpa mengikutkan baris tersebut anda tetap dapat mengeksekusi script bash, dengan catatan bash adalah shell aktif. atau dengan mengetikkan bash pada prompt shell.[usman@linux$]bash tes
tentunya cara ini kurang efisien, menyertakan path program bash diawal script kemudian merubah permission file sehingga dapat anda execusi merupakan cara yang paling efisien.
Sekarang coba kita membuat script shell yang menampilkan informasi berikut:
- Waktu system
- Info tentang anda
- jumlah pemakai yang sedang login di system
#!/bin/bash
#myinfo
#membersihkan tampilan layar
clear
#menampilkan informasi
echo -n "Waktu system :"; date
echo -n "Anda :"; whoami
echo -n "Banyak pemakai :"; who | wc -l
sebelum dijalankan jangan lupa untuk merubah permission file myinfo sehingga dapat dieksekusi oleh anda
[usman@linux$]chmod 755 myinfo
[fajar@linux$]./myinfo
Waktu system : Sat Nov 25 22:57:15 BORT 2001
Anda : fajar
Banyak pemakai : 2
tentunya layout diatas akan disesuaikan dengan system yang anda gunakan statement
echo
dengan opsi -n
akan membuat posisi kursor untuk tidak berpindah ke baris baru karena secara default statement echo
akan mengakhiri proses pencetakan ke standar output dengan karakter baris baru (newline), anda boleh mencoba tanpa menggunakan opsi -n, dan lihat perbedaannya. opsi lain yang dapat digunakan adalah -e
(enable), memungkinkan penggunaan backslash karakter atau karakter sekuen seperti pada bahasa C atau perl, misalkan :echo -e "\abunyikan bell"
jika dijalankan akan mengeluarkan bunyi bell, informasi opsi pada statement
echo
dan backslash karakter selengkapnya dapat dilihat via man di prompt shell.[usman@linux$]man echo
Text Editor
- Pengertian Text Editor Nano
Nano adalah salah satu jenis teks editor pada Linux/UNIX-System yang berbasis CLI (Command Line Interface).Nano merupakan tiruan/jiplakan dari Pico (Teks Editor buatan Pine E-Mail Client).Nano dikeluarkan sebagai perangkat lunak bebas dengan lisensi GNU GPL.
Nano dikontrol dengan menggunakan control-key keyboard.Biasanya shortcut control-key tersebut ditampilkan pada bagian bawah layar.Untuk dapat melihat perintah secara lengkap,dapat menggunakan bantuan dengan menekan "Ctrl+G".
Berikut dasar-dasar menggunakan Nano Editor :
- Membuat File
- Hanya Meyimpan Hasil Pengolahan
- Keluar dan Menyimpan Hasil Pengolahan
- Hanya Keluar
- Mencari Kata
- Cut dan Paste
- 1 kata atau lebih "Tepatkan Kursor pada awal kata , tekan Ctrl + 6 ,arahkan kursor sampai akhir kata yang akan dipotong, kemudian Ctrl+K .Untuk Mem-paste-kan ,Tepatkan kursor pada lokasi tujuan lalu tekan Ctrl+U."
- 1 baris "Tepatkan Kursor pada akhir baris, kemudian tekan Ctrl+K .Untuk Mempastekan , tepatkan kursor pada lokasi tujuan lalu tekan Ctrl+U.
- Beberapa baris/paragraf "Tepatkan Kursor pada awal baris, kemudian tekan Ctrl+K berkali-kali sampai akhir baris hilang.Untuk Mempastekan , tepatkan kursor pada lokasi tujuan lalu tekan Ctrl+U."
- Memasukan Isi File Lain Kedalam Editor
- Membuat Paragraf Rata Kanan-Kiri(justify)
- Berpindah Ke Layar Sebelumnya
- Berpindah Ke Layar Selanjutnya
- Berpindah Ke Baris Sebelumnya
- Berpindah Ke Baris Selanjutnya
#nano [nama_file]Note : Akan Muncul layar kosong.Silahkan teman-teman ketik isi yang diingin dimasukan ke dalam file.
Ctrl+O kemudian ketikan nama file
Ctrl+X kemudian ketikan 'y'
Ctrl+XNote : Jika Teman-teman telah mengubah isi file dan hanya ingin keluar tanpa menyimpan file gunakan shortcut Ctrl+X dan kemudian ketik 'n'.
Ctrl+W kemudian tulis kata yang akan dicari
Ctrl+R kemudian ketikan lokasi file
Ctrl+J
Ctrl+Y
Ctrl+V
Ctrl+P
Ctrl+N
Teman Teman Juga dapat memakai tombol F1-F12 Pada keyboard untuk mengganti Shortcut Control Key:
- Ctrl+G : F1
- Ctrl+X : F2
- Ctrl+O : F3
- Ctrl+J : F4
- Ctrl+R : F5
- Ctrl+W : F6
- Ctrl+Y : F7
- Ctrl+V : F8
- Ctrl+K : F9
- Ctrl+U : F10
========================================================================
E.POSTEST
1. 1. Siapkan file
latihan dengan isi sebagai berikut:
Latihan denga vi
-
Baris awal yang ditulis
Ini adalah Kalimat yang kedua
Kalimat ketiga
-
-
a. hapus baris ke 2 dengan perintah dd
b. hapus 3 baris sekaligus dengan instruksi 3dd
c. batalkan penghapusan tersebut dengan u (undo)
2. Ketikan teks dibawah ini dengan menggunakan editor nano. Simpanlah dengan nama teks.txt. gunakan kunci-kunci vi.
Happiness doesn’talways go with money.
If often happens trhat success comes after many pailures.
I’am very happy that your health is showing signs of improvement.
All I want is some peace and quite.
We have visited this island year in year out and never get bored.
Everyone but myself, I said; to everyone else this be clear, but not to me.
While I understand what you say, I can’t agree with you. It gives me pleasure to see you looking happy. He has been able to tell us more about computer than anyone can do.
Gunakan perintah dibawah ini untuk memeriksa apakah spelling dari text berbahasa inggris yang anda ketikan diatas benar atau tidak.
$ spell teks.txt .
Latihan denga vi
-
Baris awal yang ditulis
Ini adalah Kalimat yang kedua
Kalimat ketiga
-
-
a. hapus baris ke 2 dengan perintah dd
b. hapus 3 baris sekaligus dengan instruksi 3dd
c. batalkan penghapusan tersebut dengan u (undo)
2. Ketikan teks dibawah ini dengan menggunakan editor nano. Simpanlah dengan nama teks.txt. gunakan kunci-kunci vi.
Happiness doesn’talways go with money.
If often happens trhat success comes after many pailures.
I’am very happy that your health is showing signs of improvement.
All I want is some peace and quite.
We have visited this island year in year out and never get bored.
Everyone but myself, I said; to everyone else this be clear, but not to me.
While I understand what you say, I can’t agree with you. It gives me pleasure to see you looking happy. He has been able to tell us more about computer than anyone can do.
Gunakan perintah dibawah ini untuk memeriksa apakah spelling dari text berbahasa inggris yang anda ketikan diatas benar atau tidak.
$ spell teks.txt .
JAWAB
t
.
.
1. Sisipkan file latihan dengan isi sebagai berikut :
Hapus baris kedua dengan menggunakan perintah dd
2.Kemudian
ketik text dibawah
ini dengan menggunkan
text editor Nano.
Simpanlah dengan nama teks.txt. Gunakan kunci vi.
3.Gunakan
perintah $ spell
teks.txt untuk memeriksa
apakan spelling dati
teks berbahasa Inggris yang diketikan di atas benar
atau tidak.
========================================================================
Komentar
Posting Komentar