OPERASI INPUT DAN OUTPUT

Proses I/O
Sebuah proses memerlukan Input dan Output. Intruksi (command) yang diberikan pada Linux melalui Shell disebut sebagaieksekusi program yang selanjutnya disebut proses (process). Setiap kali instruksi diberikan, maka Linux kernel akan menciptakan sebuah ptoses dengan memberikan nomor PID (Process Identity). Proses dalam Linux selalu membutuhkan Input dan menghasilkan suatu Output.


File Descriptor
Linux berkomunikasi dengan file melalui file descriptor yang dipresentasikan melalui angka yang dimulai dari 0,1,2 dan seterusnya.
  • 0 Tiga buah file descriptor standar yang lalu diciptakan oleh proses adalah := keyboard (standard input)
  • 1 = layar (standard output)
  • 2 = layar (standard error)
Linux tidak membedakan antara peralatan hardware, file, Linux memanipulasi peralatan hardware sama dengan file.

Pembelokan (Redirection)
Pembelokan dilakukan untuk standard input, output, dan error, yaitu untuk mengalihkan file descriptor dari 0, 1, dan 2. Symbol untuk pembelokan adalah :
0 < atau < pengganti standard input
1 > atau > pengganti standard output

Saluran (Pipeline)
Mekanisme saluran digunakan sebagai alat komunikasi antar proses.
Input  → Process1  → Output = Input  → Process2  → Output
Process1 menghasilkan Output yang selanjutnya digunakan sebagai Input oleh Process2. Hubungan output input ini dinamakan saluran, yang menghubungkan Process1 dengan Process2 dan dinyatakan dengan symbol pipe ( | ).
Process1 | Process2

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 merupakan 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 :
a. Perintah grep
Digunakan untuk menyaring masukannya dan menampilkan baris – baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression.
b. Perintah wc
Digunakan untuk menghitung jumlah baris, kata dan karakter dari baris – baris masukan yang diberikan kepadanya. Untuk mengetahui berapa baris gunakan opsi -l, untuk mengetahui berapa kata, gunakan opsi -w dan untuk mengetahui berapa karakter, gunakan opsi -c. Jika salah satu opsi tidak digunakan, maka tampilannya adalah jumlah baris, jumlah kata, dan jumlah karakter.
c. Perintah sort
Digunakan untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter
d. Perintah cut
Digunakan untuk mengambil kolom tertentu dari baris – baris masukannya, yang ditentukan pada opsi -c.
e. Perintah uniq
Digunakan untuk menghilangkan baris – baris berurutan yang mengalami duplikasi, biasanya digabungkan dengan pipeline dengan sort.

LATIHAN
Latihan 1. File descriptor
1. Output ke layar (standar output), input dari system (kernel)
# ps


2. Output ke layar (standar output), input dari keyboard (standar input)
# cat
Hallo, apa kabar
Hallo, apa kabar
Exit dengan ^d
[Ctrl + d]

3. Inputdari keyboard dan output ke alamat internet
# mail aslab_01@uniku.ac.id
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)

Latihan 2. Pembelokan (redirection)
1. Pembelokan standard output
# cat 1> myfile.txt 
Ini adalah teks yang saya simpan ke file myfile.txt

2. Pembelokan standard input, yaitu input dibelokkan dari keyboard menjadi dari file
# cat 0 < myfile.txt
# cat myfile.txt

3. Pembelokan standard error untuk disimpan di file
# mkdir mydir (Terdapat pesan error)
# mkdir mydir 2> myerror.txt
# cat myfile.txt

Latihan 3. Saluran (pipeline)
$ who
$ who | sort
$ who | sort -r
$ who >tmp
$ sort tmp
$ rm tmp

$ ls -l /etc | more

$ ls -l /etc | sort | more

Latihan 4. Filter
$ w -h | grep PM
$ grep st /etc/passwd
$ ls /etc | wc -l
$ cat > kelas1.txt
Toni
ToKha
Ditoel
Uhcy Ade
[Ctrl + d]
$ cat > kelas2.txt
Mayang Nandita
[Ctrl + d]
$ cat kelas1.txt kelas2.txt | sort

$ who | cut -cl -8
$ cat kelas1.txt kelas2.txt > kelas.txt
$ cat kelas.txt | sort | uniq

Komentar

Postingan populer dari blog ini

FILE PERMISSION

ROUTING (STATIC & DYNAMIC)

LINUX FILE COMMAND