LINUX : OPERASI INPUT OUTPUT

 

Operasi Input Output



TUJUAN PRAKTIKUM

1. Mengetahui proses input output pada simstem operasi Linux.

2. Mengetahui konteks input dan output dalam Linux

3. Menggunakan perintah-perintah operasi input output pada sistem operasi Linux.

4. Menggunakan utilitas operasi input output pada sistem operasi Linux. 

PROSES I/O

Sebuah proses memerlukan Input dan Output.

Sebuah proses memerlukan Input dan Output. Instruksi (command) yang diberikan pada Linux melalui Shell disebut sebagai eksekusi program yang selanjutnya di sebut proses. Setiap kali instruksi diberikan, maka linux kernel akan menciptakan sebuah proses dengan memberikan nomor PID (Process Identity).  Proses dalam linuk slalu membutuhkan Input dan menghasilkan suatu Output. Dalam konteks Linux input/output adalah :

-     Keyboard (input)
-     Layar (output)
-     Files
-     Struktur data kernel
-     Peralatan I/O lainnya (misalnya Network)


FILE DESCRIPTOR
Linux berkomunikasi dengan file melalui file descriptor yang direpresentasikan melalui angka yang di mulai 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)


Linux tidak membedakan antara peralatan hardware dan file, linux memanipulasi peralatan hardwaresama dengan file.


PEMBELOKAN (REDIRECTION)
Terdapat istilah standard input, standard output, dan standard error. Standard input adalah masukan atau input standard dari suatu perintah atau program. Input standar ini adalah keyboard. Standard output adalah keluaran atau output standar dari suatu perintah atau program. Outpot standar ini adalah layar monitor atau terminal. Standard error adalah keluaran atauoutput standar jika pada program atau perintah terjadi error. Keluaran iniberupa pesan-pesan kesalahan yang berguna bagi pembuat program atau oranglain yang membutuhkan. Standard error biasanya dalah layar console.
Kita dapat membelok-belokkan standard input, standard output dan standard error menuju ke tujuan lain. Misalnya membelokkan standard output suatu program ke file atau membelokkan standard input suatu program dari suatu file. Proses pembelokan ini disebut redirection, dan menggunakan symbol > (membelokkan standard output ke file), < (membelokkan standard input darifile).
Fasilitas redirection memungkinkan kita untuk dapat menyimpan output dari sebuah proses untuk disimpan ke file lain (Output Redirection) atau sebaliknya menggunakan isi dari file sebagai input dalam suatu proses (Input redirection). Komponen-komponen dari redirection adalah <, >, < <,
> >

PIPA (PIPELINE)
Pada Linux, hasil keluaran suatu proses program dapat diberikan sebagai input pada proses lainnya. Tanda vertical bar (|) adalah tanda yang digunakan untuk pipeline. Penggunaan pipeline pada perintah-perintah Linux tidak terbatas.
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 menghubungkan Proses 1 dengan Proses2 dan dinyatakan dengan symbol “|”. Proses1 | Proses2.


FILTER
Filter adalah utilitas linux yang dapat memproses standar 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 berpungsi sebagai filter. P1 (awal) dan Pn (terakhir) boleh bukan filter. Utilitas yang bukan filter misalnya who, is, ps, 1p, 1pr, mail dan lainnya. Beberapa perintah linux yang di gunakan untuk proses penyaringan antara lain :
•Perintah grep
Global regular expresion parse atau grep adalah perintah untuk mencari file-file yang mengandung teks dengan kriteria yang telah Anda tentukan. Digunakan untuk menyaring masukan dan menampilkan baris-baris yang hanya mengandung pola yang ditentukan. Pola ini disebut regular expression. Anda dapat mencari karakter atau kata yang diinginkan dari sebuah file yang terdiri dari banyak kalimat.  Perintah  yang digunakan  adalah grep. Dengan perintah ini pencarian lebih mudah dilakukan. Format : grep option karakter/kata
•Perintah wc
Digunakan untuk menghitung jumlah baris, kata dan karakter dari baris- baris ,asukan 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 untuk menampilkan jumlah baris, jumlah kata dan ukuran dari sebuah file. Format : wc option nama_file
•Perintah sort
Digunakan untuk mengurutkan masukannya berdasarkan urutan nomor ASCII dari karakter. Apabila  anda  ingin menampilkan isi file teks secara urut. Gunakan perintah ini. Format : sort option nama_file
•Perintah cut
Digunakan untuk mengambil kolom tertentu dari baris-baris masukannya, yang direntukan pada option –c.
•Perintah uniq
Digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi, biasanya digabungkan dalam pipeline dengan sort.

 

Hasil dan Pembahasan
Login sebagai user, bukalah Console Terminal dan lakukan percobaan- percobaan dibawah ini kemudian selesaikan soal-soal latihan !
Percobaan 1 : File descriptor

 


1. Output kelayar (standar output), input dari system(kernel)
$ ps

 

 




Analisis
Gambar di atas merupakan perintah ps akronim dari process status. Perintah ini akan memberikan informasi status proses pada sistem kita. Informasi mengenai proses apa ssaja yang sedang aktif, siapa pemilik proses tersebut, berapa lama proses berjalan dan berapa ID atau nomor pengenal proses.

 

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]

 




Analisis
Gambar di atas merupakan perintah cat yang digunakan untuk menampilkan isi file. file descriptor yang diinputkan sebelumnya akan lngsung dioutputkan kelayar hallo, apa kabar dan exit dengan ̂d, untuk kembali seperti semula. 


3. Input dari keyboard dan output ke alamat internet
$ mail admin@yahoo.com
contoh surat elektrik yang langsung dibuat pada standar input (keyboard) [ctrl-d]

 




 

Analisis

Gambar di atas merupakan perintah menginputkan dari keyboard dan mengoutputkan ke alamat internet $ mail admin@yahoo.com akan tetapi perintah ini gagal karena tidak terhubung ke internetakan tetapi perintah ini gagal karena tidak terhubung ke internet, untuk kembali seperti semula tekan ctrl+d.

 

4. Input nama directory, output tidak ada (membuat directory baru), bila terjadi error maka tampilan error pada layar (standard error)

$ mkdir mydir

$ mkdir mydir (terdapat pesan error)




 

Analisis

Gambar di atas merupakan cara untuk membuat direktori mydir. Perintah ini gagal karena berkas mydir telah dibuat sebelumnya, jadi output direktori mydir tidak bisa di input karena sudah ada.

 

Percobaan 2 : Pembelokan (redirection)

 

1. Pembelokan standar output

$ cat 1> myfile.txt

Ini adalah text yang saya simpan ke file my file.txt


Analisis
Gambar di atas merupakan perintah pembelokan (redirection) yang membelokan standar. 1> artinya pengganti standar output. Setelah menuliskan perintah cat 1>myfile.txt kemudian mulailah mengetikan isi file tersebut, setelah selesai simpan file dengan menekan ctrs+c atau ctrl+z

 

2. Pembelokan standar input, yaitu input dibelokan dari keyboard menjadi dari file

$ cat 0< myfile.txt

$ cat myfile.txt



Analisis

Gambar di atas merupakan perintah pembelokan (redirection) yang membelokan input, yaitu input dibelokan dari keyboard menjadi dari file. $ cat 0< myfile.txt. perintah 0< artinya pengganti standar input, setelah mengetikan perintah tersebut maka akan muncul output isi file. Cara ini sama dengan mengetikan perintah cat myfile.txt yang tujuannya untuk menampilkan isi file tersebut.

 

3. Pembelokan standar error untuk disimpan di file

$ mkdir mydir (Terdapat pesan error)
$ mkdir mydir 2> myerror.txt
$ cat myerror.txt



Analisis
Gambar di atas merupakan perintah pembelokan (redirection) standar error untuk disimpan di file $ mkdir mydir (Terdapat pesan error karena file sudah ada), $ mkdir mydir 2> myerror.txt (artinya pengganti standar error), dan $ cat myerror.txt (menampilkan file myerror).

 

4. Notasi 2>&1 : pembelokan standar error (2>) adalah identic dengan file descriptor 1.
$ Is filebaru (Terdapat pesan error)
$ Is filebaru 2> out.txt
$ cat out.txt
$ Is filebaru 2> out.txt 2>&1
$ cat out.txt

 


 

Analisis
Gambar di atas merupakan perintah pembelokan dengan notasi 2>&1. Perintah $ Is filebaru (Terdapat pesan error karena file tidak ditemukan),
$ Is filebaru 2> out.txt, (identic dengan file descriptor 1), $ cat out.txt, (menampilkan file out.txt) $ Is filebaru 2> out.txt 2>&1 (merupakan pembelokan standar error) dan $ cat out.txt (menampilkan file out.txt).

 

5. Notasi 1>&2 (atau>&2) : pembelokan standar output sama dengan file descriptor 2 yaitu standar error.
$ echo “mencoba menulis file” 1> baru
$ cat filebaru 2> baru 1>&2
$ cat baru

 

Analisis

Gambar di atas merupakan perintah pembelokan notasi 1>&2. Perintah $ echo “mencoba menulis file” 1> baru (merupakan percobaan untuk menulis kedalam file baru), $ cat filebaru 2> baru 1>&2 (pembelokan standar output sama dengan file descriptor 2 yaitu standar error), dan $ cat baru (menampiknan file baru, namun file ini tidak ada).

 

6. Notasi>>(append)

$ echo “kata pertama” > surat

$ echo “kata kedua” >> surat
$ echo “kata ketiga” >> surat
$ caat surat
$ echo “kata keempat” > surat
$ cat surat

Analisis
Gambar di atas merupakan perintah pembelokan dengan notasi >> yang artinya penambahan. Perintah $ echo “kata pertama” > surat (mgengisi kata pertama pada file surat), $ echo “kata kedua” >> surat (menambahkan kata kedua pada file surat), $ echo “kata ketiga” >> surat (menambahkan kata ketiga pada file surat), $ cat surat (menampilkan isi file surat), $ echo “kata keempat” > surat (menambahkan kata keempat pada file surat, namun tanda > akan menimpa file yang sudah ada).

 

7. Notasi here document (<<++ …. ++) di gunakan sebagai pembatas input dari keyboard. Perhatikan bahwa tanda pembatas dapat di gantikan dengan tanda apa saja, namun harus sama dan tanda penutup harus di berikan pada awal baris
$ cat <<++
Hallo, apa kabar ? Baik-baik saja ? Ok!
++
$ cat <<%%% Hallo, apa kabar ? Baik-baik saja ? Ok !
%%%

 


Analisis
Gambar di atas merupakan perintah pembelokan dengan notasi here document (<<++ …. ++). Perintah $ cat <<++ (merupakan perintah untuk memulai menginputkan isi untuk di outputkan), setalah meninputkan kata-kata, perintah ++ (merupakan perintah untuk mengakhiri kata-kata tersebut dan menampilkan hasil dari kata-kata tersebut. Perintah ini sama dengan perintah $ cat <<%%% dengan akhiran %%%. Yang membedakannya adalah simbol pembatas yang digunakan. Pastikan simbol yang digunakan antara pembuka dan penutup harus sama.

 

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.

 


 Analisis

Gambar di atas merupakan perintah pembelokan dengan notasi – (input keyboard). Perintah $ cat myfile.txt – surat, merupakan cara untuk menampilkan file myfile.txt dan menyelipkan inputan surat dari keyboard.

 

9. Untuk membelokkan standart output ke file, di gunakan operator >

$ echo hello
$ echo hello > output
$ cat output


Analisis

Gambar di atas merupakan perintah pembelokan dengan notasi operator

>. Perintah $echo hello (merupakan perintah untuk menginputkan kata helo dan meng outputkannya secara langsung), perintah $ echo hello > output (merupakan perintah penginputan kata helo, lalu dibelokan ke file output), perintah $cat output (merupakan perintah untuk menampilkan isi file tersebut).

 

 10. Untuk menambahkan output ke file di gunakan operator > 

$ echo bye >> output

$ cat output


Analisis
Gambar di atas merupakan perintah pembelokan dengan notasi operator >>. Perintah $echo bye >> output merupakan perintah untuk menambahkan kata bye pada file output. Perintah $cat output merupakan perintah untuk menampilkan isi dari file output maka akan tampil hello dan bye.

 

 11. Untuk membelokan standart input di gunakan operator < 

$ cat < output

 

Analisis

Gambar di atas merupakan perintah pembelokan dengan notasi operator <. operator < merupakan pembelokan ke file output. Perintah $cat < output merupakan perintah untuk menampilkan file output, cara ini sama dengan perintah cat output, maka akan tampil output hello dan bye.

 

12. Pembelokan standart input dan standar output dapat dikombinasikan tetap 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 


 Analisis

Gambar di atas merupakan perintah pembelokan dengan standart input dan standar output dapat dikombinasikan tetap tidak boleh menggunakan nama file yang sama sebagai standart input dan output, maka akan tampil output hello dan bye.

 

Percobaan 3 : Pipa (Pipeline)

 Operator pipa ( I ) digunakan untuk membuat eksekusi proses dengan melewati data langsung ke data lainnya.

$ who

$ who I sort

$ who I sort -r

$ who > tmp

$ sort tmp

$ rm tmp

$ Is -1 /etc I more

$ Is -1 /etc I sort I more




Analisis
Gambar di atas merupakan perintah pipa (pipeline) dengan menggunakan perintah who, sort, dan ls. Pipeline dugunakan untuk komunikasu antar perintah. Dengan ini dapat menghubungkan sebuah perintah yang menghasilkan sebuah output dengan perintah lain yang akan memproses output tersebut.

 

Percobaan 4 : Filter
Pipa   juga   digunakan   untuk   mengkombinasikan utilitas system untuk membentuk pengsi yang lebih kompleks 
$ w-h | <User>
$ grep <user> /etc/passwd
$ Is etc | wc
$ Is etc | wc -1
$ cat > kelas1.txt 
Tyan
Thareq
Jeffri [Ctrl-d]
$ cat > kelas2.txt
Arif
Daffa [Ctrl –d]
$ cat kelas1.txt kelas2.txt I sort
$ cat kelas1.txt kelas2.txt > kelas,txt
$ cat kelas.txt I sort I uniq

 







Analisis
Gambar di atas merupakan perintah filter dengan menggunakan perintah w, grep, ls dan cat. Operatot Pipa juga digunakan untuk mengkombinasikan. Setelah semua perintah selesai maka file kelas1.txt dan file kelas2.txt berhasil dibuat.

 

LATIHAN

 1. Lihat daftar secara lengkap pada directory aktif, belokan tampilan standar output ke file baru.


Analisis

Gambar di atas merupakan daftar lengkap suatu directory yang aktif, lalu dibelokan output ke filebaru.txt, perintah $ ls filebaru.txt merupakan perintah untuk melihat filebaru.txt dalam direktori. Perintah $ cat filebatu.txt merupakan perintah untuk menampilkan isi dari hasil tempilan suatu direktori yang berhasil dibelokan.

 

2. Lihat daftar secara lengkap pada direktori /etc/passwd, belokan tampilan standard output ke file baru tanpa menghapus file baru sebelumnya.

 


Analisis

Gambar di atas merupakan perintah untuk membelokan tampilan direktori etc/passwd ke filebaru.txt. perintah $ls /etc/passwd merupakan perintah untuk menampilkan direktori passwd. Perintah >> merupakan menambahkan isi direktori ke filebaru.txt tanpa menghapus isi sebelumnya. Perintah $ cat filebaru.txt merupakan perintah untuk melihat daftar secara lengkap direktori yang telah ditambahkan dan dibelokan.

 

3. Urutkan file baru dengan cara membelokan standar input. 


 

Analisis

Gambar di atas merupakan perintah pengurutan file baru dengan cara membelokan standar input. Perintah $sort filebaru.txt merupakan perintah untuk mengurutkan isi dari terkecil ke terbesar dalam sebuah file.

 

4. Urutkan file baru dengan cara membelokan standar input dan standar output ke file baru.urut

 

Analisis

Gambar di atas merupakan perintah mengurutkan file baru dengan cara membelokan ke filebaru.urut. perintah $ sort filebatu.txt > filebaru.urut merupakan perintah pembelokan dari filebaru.txt ke filebaru.urut. perintah $ sort filebaru.urut merupakan perintah untuk mengurutkan filebaru.urut yang telah dibelokan.

 

5. Buatlah directory latihan2 sebanyak 2x dan belokan standar error ke file rmderror.txt.


 Analisis

Gambar di atas merupakan perintah untuk membuat latihan2 sebanyak 2x dengan membelokan standar error ke file rmderror.t. perintah $mkdir latihan2 merupakan perintah untuk membuat direktori latihan2. Lalu perintah $mkdir latihan2 merupakan perintah membuat direktori namun gagal karena direktori latihan2 telah ada. $perintah $mkdir latihan2 > rmdirerror.t merupakan perintah untuk membelokan ke file rmderror.t. Perintah $ cat rmderror.t merupakan perintah untuk menampilkan file rmderror.t.

 

6. Urutkan kata2 berikut : Jakarta Bandung Surabaya Padang Palembang Lampung.

Dengan menggunakan notasi here document (<@@@. @@@)


Analisis
Gambar di atas merupakan pengurutan nama-nama kota dengan menggunakan notasi here document (<@@@. @@@). Perintah cat <<@@@ | sort merupakan perintah untuk memulai pengetikan penginputan Nama-nama kota, dengan menggunakan operator pipa sort maka perintah akan bersinergi untuk mengoutputkan hasil yang akan diurutkan.

 

7. Hitung jumlah baris, kata dan karakter dari file baru.urut dengan menggunakan filter dan tambahkan data tersebut ke filebaru.

8. Gunakan perintah dibawah ini dan catat hasilnya

$ cat > hello.txt Dog cat

Cat duck Dog chicken Chicken duck Chickeun cat Dog duck

$ cat hello.txt | sort | uniq

$ cat hello.txt | grep “dog” | grep –v “cat”


Analisis
Gambar diatas merupakan perintah untuk membelokan dari hello.txt sehingga bisa menginputkan beberapa kata atau karakter. Perintah $ cat hello.txt | sort | uniq merupakan perintah untuk menampilkan isi dari file hello.txt yang diurutkan menggunakan sort dan uniq digunakan untuk menghilangkan baris-baris berurutan yang mengalami duplikasi. Perintah cat hello.txt | grep “dog” | grep –v “cat” merupakan perintah untuk menampilkan isi dari file hello.txt dengan kalimat yang mengandung kata “dog” sedangkan tidak mengandung kata “cat”.


Comments