Operasi Input Output
Praktikum 2
Operasi Input Output
I. Pokok Bahasan
- Pipeline
- Redirection
II. Tujuan Belajar
Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu:
- Memahami konsep proses I/O dan redirection
- Memahami standar input, output dan error
- Menggunakan notasi output, append dan here document
- Memahami konsep PIPE dan filter
III. ABSTRAK
Sistem operasi input output pada linux membutuhkan perintah-perintah yang dilakukan pada bagian terminal untuk memaksimalkan pemakaiannya. Selain perintah-perinta dasar, sistem operasi linux juga memiliki perintah input dan output. Beberapa contoh perintah yang dilakukan dalam praktik ini adalah $ ps, $ cat, $ mail, dan beberapa perintah pembelokan. Dilakukan juga percobaan mengenai pipa (pipeline) dan filter.
IV. Dasar Teori
1. PROSES I/O
Sebuah proses memerlukan Input dan Output.
Instruksi (command) yang diberikan pada Linux melalui Shell disebut sebagai eksekusi program yang selanjutnya disebut proses.
Setiap kali instruksi diberikan, maka Linux kernel akan menciptakan sebuah proses dengan memberikan nomor PID (Process Identity). Proses dalam Linux selalu membutuhkan Input dan menghasilkan suatu Output.
Dalam konteks Linux input/o utput adalah :
- Keyboard (input)
- Layar (output)
- Files
- Struktur data kernel
- Peralatan I/O lainnya (misalnya Network)
2. FILE DESCRIPTOR
Linux berkomunikasi dengan file melalui file descriptor yang direpresentasikan melalui angka yang dimulai dari 0, 1, 2 dan seterusnya.
Tiga buah file descriptor standar yang lalu diciptakan oleh proses adalah :
- 0 = keyboard (standar
input
- 1 = layar (standar output)
- 2 = layar (standar error)
3. 3. PEMBELOKAN (REDIRECTION)
Pembelokan dilakukan untuk standard input, output dan error, yaitu untuk mengalihkan file descriptor dari 0, 1 dan 2. Simbol untuk pembelokan adalah :
0< atau < pengganti standard input
1> atau > pengganti standard output
2>
4. PIPA (PIPELINE)
Mekanisme pipa digunakan sebagai alat komunikasi antar proses.
Input => Proses1 => Output = Input => Proses2 => Output
Proses 1 menghasilkan output yang selanjutnya digunakan sebagai input oleh Proses 2. Hubungan output input ini dinamakan pipa, yang menghubngkan Proses 1 dengan Proses2 dan dinyatakan dengan symbol “|”.
Proses1 | Proses2
5. FILTER
Filter adalah utilitas Linux yang dapat memproses standard input (dari keyboard) dan menampilkan hasilnya pada standard output (layar). Contoh filter adalah cat, sort, grep, pr, head, tail, paste dan lainnya.
Pada sebuah rangkaian pipa :
P1 | P2 | P3 ……. | Pn-1 | Pn
Maka P2 sampai dengan Pn-1 mutlak harus utilitas Linux yang berfungsi sebagai filter. P1 (awal) dan Pn (terakhir) boleh tidak filter. Utilitas yang bukan filter misalnya who, ls, ps, lp, lpr, mail dan lainnya.
Beberapa perintah Linux yang digunakan untuk proses penyaringan antara lain
1. Perintah grep
Digunakan untuk menyaring masukannya da n menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression
2. Perintah wc
Digunakan untuk menghitung jumlah baris, kata dan karakter dari baris-baris masukan yang diberikan kepadanya. Untuk mengetahui berapa baris gunakan option – l, untuk mengetahui berapa kata, gunakan option –w dan untuk mengetahui berapa karakter, gunakan option –c. Jika salah satu option tidak digunakan, maka tampilannya adalah jumlah baris, jumlah kata dan jumlah karakter
3. Perintah sort
Digunakan untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter.
4. Perintah cut
Digunakan untuk mengambil kolom tertentu dari baris-baris masukannya, yang ditentukan pada option –c.
5. Perintah uniq
Digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi, biasanya digabungkan dalam pipeline dengan sort.
V. PENDAHULUAN
Jawablah pertanyaan-pertanyaan di bawah ini :
1. Apa yang dimaksud redirection ?
jawab :
Redirection adalah pembelokan yang dilakukan untuk standar input, output, dan error dan untuk mengalihkan file descriptor dari 0, 1, dan 2.
2. Apa yang dimaksud pipeline ?
jawab :
Pipeline adalah suatu mekanisme pipa yang digunakan sebagai alat komunikasi antar proses.
Input => Proses1 => Output = Input => Proses2 => Output
Proses 1 menghasilkan output yang selanjutnya digunakan sebagai input oleh Proses 2. Hubungan output input ini dinamakan pipa, yang menghubngkan Proses 1 dengan Proses2 dan dinyatakan dengan symbol “|”.
Proses1 | Proses2
3. Apa yang dimaksud perintah di bawah ini : echo, cat, more, sort, grep, wc, cut, uniq
jawab :
VI. Percobaan
3. Input dari keyboard dan output ke alamat internet
4. Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi error maka tampilanerror pada layar (standard error)
$ mkdir mydir
$ mkdir mydir (Terdapat pesan error)
Percobaan 2 : Pembelokan (redirection)
$ cat 1> myfile.txt
Ini adalah teks yang saya simpan
Ke file myfile.txt
$ cat 0<
myfile.txt
$ cat myfile.txt
Analisa :
- $ cat 0< myfile.txt merupakan perintah untuk membelokkan standar output yang sebelmunya yang telah diinput, sperti praktek diatas
- $ cat myfile.txt merupakan perintah untuk menampilkan teks yang disimpan dalam file myfile.txt tadi
3. Pembelokan standar error untuk disimpan di file
$ mkdir mydir (Terdapat pesan error)
$ mkdir mydir
2> myerror.txt
$ cat myerror.txt
Analisa :
- $ mkdir mydir 2> myerror.txt merupakan perintah pembelokkan standar output erro yang disimpan dalam file
- $ mkdir mydir (terdapat pesan error) dikarenakan jika kita membuat sebuah direktori baru dengan nama yang sama yang sduah dibuat maka akan tampil pesan error, dan kemudain pesan error tadi akan disimpan didirektori myerror.txt
- $ cat myerror.txt merupakan perintah untuk melihat isi dari file myerror.txt
1. 4. Notasi 2>&1 : pembelokan standar error (2>) adalah identik dengan file descriptor 1.
$ ls filebaru (terdapat pesan error)
$ ls filebaru 2> out.txt
$ cat out.txt
$ ls filebaru 2>
out.txt 2>&1
$ cat out.txt
Analisa :
- $ ls file baru merupakan perintah untuk menampilkan daftar file dalam direktori aktif, sedangkan diatas terdapat pesan error, itu dikarenakan direktori filebaru yang diketik belum dibuat sehingga timbul pesan error
- $ ls filebaru 2> out.txt maksud dari syntac tersebut adalah pesan error yang tadi akan dibelokan atau disimpan di file out.txt dan ditampikan dengan menggunakan perintah cat out.txt
5. Notasi 1>&2 (atau >&2) : pembelokan standar output adalah sama dengan file descriptor 2 yaitu standar error
$ echo “mencoba menulis
file” 1> baru
$ cat filebaru 2>
baru 1>&2
$ cat baru
Analisa :
- $ echo "mencoba menulis file" 1> baru merupakan perintah untuk menginput teks "mencoba menulis file" yang disimpan dalam file baru.
- $cat filebaru 2> baru 1>&2
- $ cat baru merupakan perintah untuk menampilkan teks yang disimpan dalam file baru tadi
6. Notasi >> (append)
$ echo “kata pertama”
> surat
$ echo “kata kedua”
>> surat
$ echo “kata ketiga”
>> surat
$ cat surat
$ echo “kata keempat”
> surat
$ cat surat
Analisa : $ echo "kata pertama" > surat adalah perintah untuk menginput teks "kata pertama", karakter > akan membelokan output dari echo menjadi sebuah file baru bernama surat, sedangkan karakter >> akan menyisipkan output dari echo di kelanjutan isi dari file tujuan. $ cat surat berfungsi untuk menampilkan kata yang sudah ada di folder surat.
7. Notasi here document (<<++ …. ++) digunakan sebagai pembatas input dari keyboard. Perhatikan bahwa tanda pembatas dapat digantikan dengan tanda apa saja, namun harus sama dan tanda penutup harus diberikan pada awal baris
$ cat <<++
Hallo, apa
kabar ? Baik-baik saja ?
Ok!
++
$ cat <<%%% Hallo, apa kabar ? Baik-baik saja ?
Ok!
%%%
Analisa : Tanda pada perintah $ cat <<++ (tanda berada di bagian +) adalah sebagai pembatas input. Input bisa terus dimasukan selama perintah tanda (++) belum diketik. Ketika tanda (++) sudah di ketik dan di enter, input berhenti dimasukan dan akan ditampilkan karena mengandung perintah $ cat.
8. Notasi – (input keyboard) adalah representan input dari keyboard. Artinya menampilkan file 1, kemudian menampilkan input dari keyboard dan menampilkan file 2. Perhatikan bahwa notasi “-“ berarti menyelipkan input dari keyboard
$ cat myfile.txt – surat
$ echo hello
$ echo hello > output
$ cat output
10. Untuk menambahkan output ke file digunakan operator
>>
$ echo bye >> output
$ cat output
11. Untuk membelokkan standart
input digunakan operator
<
$ cat < output
12. Pembelokan standart input dan standart
output dapat dikombinasikan tetapi tidak boleh menggunakan nama file yang sama sebagai
standart input dan output.
$ cat < output
> out
$ cat out
$ cat < output >> out
$ cat out
$ cat < output > output
$ cat output
$ cat < out >> out (Proses tidak berhenti)
[Ctrl-c]
$ cat out
Percobaan 3 : Pipa (pipeline)
1. Operator pipa (|) digunakan untuk
membuat eksekusi proses
dengan melewati data langsung ke data lainnya.
$ who
$ who | sort
$ who | sort –r
$ who > tmp
$ sort tmp
$ rm tmp
$ ls –l /etc | more
$ ls –l /etc | sort | more
Percobaan 4 : Filter
2. Pipa juga digunakan untuk mengkombinasikan utilitas
sistem untuk membentuk
fungsi yang lebih kompleks
$ w –h | grep <user>
$ grep <user> /etc/passwd
$ ls /etc | wc
$ ls /etc | wc –l
$ cat > kelas1.txt Badu
Zulkifli
Yulizir
Yudi
Ade
[Ctrl-d]
$ cat > kelas2.txt
Budi
Gama
Asep
Muchlis [
Ctrl-d]
$ cat kelas1.txt kelas2.txt | sort
$ cat kelas1.txt kelas2.txt > kelas.txt
$ cat kelas.txt | sort | uniq
VII. Kesimpulan
Pada pratikum kali ini merupakan operasi input output ada banyak perintah dalam operasi input dan output pada operasi sistem linux. Salah satunya adalah perintah $ cat yang berfungsi untuk menampilkan text dari file yang dibuat. Operasi input dan output juga bepengaruh dengan simbol yang dipakai ( >, <, |) dsb.
Komentar
Posting Komentar