PRAKTIKUM 2 OPERASI INPUT OUTPUT
NAMA : FATIA YASMIN HENDRY
KELAS : BM-5A
NIM : 2023000032
- Pokok Bahasan
- Pipeline
- Redirection
- Tujuan Belajar
- 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
- Abstrak
- Membaca data dari berbagai sumber, seperti keyboard, berkas, sensor, atau perangkat jaringan, tanpa harus tahu bagaimana data tersebut diterima secara fisik.
- Menulis data ke berbagai tujuan, seperti berkas, layar, atau perangkat jaringan, tanpa perlu mengetahui detail implementasi perangkat keras.
- Menggunakan operasi I/O dengan cara yang efisien, termasuk buffering data untuk mengurangi overhead komunikasi.
- Mengatasi kesalahan yang mungkin terjadi selama operasi I/O dengan menangani exception atau error handling.
- Menyediakan abstraksi perangkat keras sehingga kode dapat lebih mudah diporting ke berbagai platform.
- Pemahaman konsep abstrak I/O sangat penting dalam pengembangan perangkat lunak, karena memungkinkan pengembang untuk membuat program yang lebih fleksibel, portabel, dan dapat diandalkan. Dengan memisahkan logika bisnis dari detail teknis I/O, pengembang dapat lebih fokus pada pemrosesan data dan fungsi inti aplikasi mereka.
- Teori Singkat
2. File Descriptor
0< atau < pengganti standard input
1> atau > pengganti standard output
2>
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 :
-Perintah grep
Digunakan untuk menyaring masukannya da n menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression.
-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.
-Perintah sort
Digunakan untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter.
-Perintah cut
Digunakan untuk mengambil kolom tertentu dari baris-baris masukannya, yang ditentukan pada option –c.
-Perintah uniq
Digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi, biasanya digabungkan dalam pipeline dengan sort.
- Tugas Pendahuluan
1. Apa yang dimaksud redirection ?
Jawaban : Redirection adalah Pembelokan dilakukan untuk standard input, output dan error, yaitu untuk mengalihkan file descriptor dari 0, 1 dan 2.
2. Apa yang dimaksud pipeline ?
Jawaban : Pipeline adalah suatu mekanisme pipa yang digunakan sebagai alat komunikasi antar proses. Dimana proses 1 menghasilkan output yang selanjutnya digunakan sebagai input oleh Proses 2. Hubungan output input ini dinamakan pipa
3. Apa yang dimaksud perintah di bawah ini :
echo, cat, more, sort, grep, wc, cut, uniq
Jawaban :
-Echo : Perintah yang digunakan untuk menampilkan output ke layar.
-Cat : Perintah untuk mencetak/menampilkan ke layar monitor isi dari sebuah file text.
-More : Perintah untuk melihat isi suatu file dengan fasilitas melihat isi file dari atas dan untuk kebawah menggunakan tombol enter untuk perbaris dan tombol spasi untuk perlayar.
-Sort : Perintah untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter.
-Grep : Perintah untuk menyaring masukannya da n menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression.
-Wc : Perintah untuk menghitung jumlah baris, kata dan karakter dari baris-baris masukan yang diberikan kepadanya.
-Cut : Perintah untuk mengambil kolom tertentu dari baris-baris masukannya, yang ditentukan pada option –c.
-Uniq : Perintah untuk mengambil kolom tertentu dari baris-baris masukannya, yang ditentukan pada option –c.
- Percobaan
Percobaan 1 : File descriptor
1. Output ke layar (standar output), input dari system (kernel)
$ ps
2. Output ke layar (standar output), input dari keyboard (standard input)
$ cat
hallo, apa khabar
hallo, apa khabar
exit dengan ^d
exit dengan ^d
[Ctrl-d]
3. Input dari keyboard dan output ke alamat internet
fatiayasmin05@gmail.com
contoh surat yang langsung
dibuat pada standard input (keyboard)
[Ctrl-d]
4. Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi error
maka tampilan error pada layar (standard error)
$ mkdir mydir
$ mkdir mydir (Terdapat pesan error)
Percobaan 2 : Pembelokan (redirection)
1. Pembelokan standar output
$ cat 1> myfile.txt
Ini adalah teks yang saya simpan
Ke file myfile.txt
\
2. Pembelokan standar input, yaitu input dibelokkan dari keyboard menjadi dari file
$ cat 0< myfile.txt
$ cat myfile.txt
3. Pembelokan standar error untuk disimpan di file
$ mkdir mydir (Terdapat pesan error)
$ mkdir mydir 2> myerror.txt
$ cat myerror.txt
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
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
6. Notasi >> (append)
$ echo “kata pertama” > surat
$ echo “kata kedua” >> surat
$ echo “kata ketiga” >> surat
$ cat surat
$ echo “kata keempat” > surat
$ cat surat
7. Notasi here document (<<++ …. ++) digunakan sebagai pembatas input dari keyboard. Perhatikan bahwa tanda pembatas dapat digantikan dengan tanda apasaja, 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!
%%%
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
9. Untuk membelokkan standart output ke file, digunakan operator >
$ 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
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
- Latihan
Jakarta
Bandung
Surabaya
Padang
Palembang
Lampung
Dengan menggunakan notasi here document (<@@@ …@@@)
Jawaban :
Pertama, buat notasi here document yang akan dibelokkan ke sebuah file kemudian isi document tersebut. Setelah diisi dan diakhiri, isi dokumen akan tersimpan ke file yang dibelokkan. File tersebut kemudian diurutkan menggunakan perintah $ sort.
7. Hitung jumlah baris, kata dan karakter dari file baru.urut dengan menggunakan filter dan tambahkan data tersebut ke file baru.
Jawaban :
Untuk mendapatkan jumlah baris, kata, dan karakter (secara berurutan) dari sebuah file, gunakan perintah wc yang dipipakan dengan perintah cat. Hasilnya kemudian bisa ditambahkan ke file menggunakan ‘>>'
8. Gunakan perintah di bawah ini dan perhatikan hasilnya.
$ cat > hello.txt
dog cat
cat duck
dog chicken
chicken duck
chicken cat
dog duck
[Ctrl-d]
$ cat hello.txt | sort | uniq
$ cat hello.txt | grep “dog” | grep –v “cat”
Jawaban :
Uniq digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi, Grep digunakan untuk menyaring masukannya dan menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression. Salah satu regular expression dari grep adalah -v (invert0match), yang akan menampilkan baris yang TIDAK mengandung pola yang ditentukan.
- Laporan Resmi
- Kesimpulan
- Daftar Pustaka/Referensi

































Comments
Post a Comment