Wednesday, March 21, 2007

LINUX BASIC, Apakah yang dimaksud Redirection dan cara kerjanya?

Melakukan Redirect input atau output dari command-command Linux

Fitur bash lain yang berguna adalah kemampuannya melakukan redirect input dan output dari command-command Linux. Anda dapat menyimpan hasil dari suatu command ke dalam file selain menampilkannya di layar, atau anda juga dapat meng-input data dari satu file ke dalam satu prorgam selain meng-input data tersebut dari keyboard.

Mari kita lihat proses redirection ini. Coba bayangkan satu command fiktif yang disebut nocats yang meminta user memasukkan input berupa angka dan menunggu sejumlah baris teks sebanyak angka tersebut dimasukkan sebelum mulai memproses teks tersebut. (progarm nocats ini akan melakukan pengecekan pada tiap input teks dan mencetak baris teks tersebut hanya jika tek tidak mengandung kata cat)

Anda dapat memasukkan data ke program tersebut melalui console (pada contoh dibawah, teks yang di-bold adalah input yang anda ketik, sementara teks normal adalah output pada console):

$ nocats
3
Dogs are much better than those other household animals.
A cat would never beg for jerky treats.
Dogs are pretty stupid, but at least they stick around.
Dogs are much better than those other household animals.
Dogs are pretty stupid, but at least they stick around.

Jika menggunakan editor teks, anda dapat meletakkan semua input data pada satu file yang disebut stuff dan memasukkannya sebagai input dari program nocats seperti ini:

% nocats < stuff
Dogs are much better than those other household animals.
Dogs are pretty stupid, but at least they stick around.

Simbol kurang-dari (<) memerintah program untuk tidak menunggu input dari keyboard melainkan mengambil input dari file stuff.
Simbol lebih-dari (>) tidak akan menampilkan output ke console melainkan me-redirect output program ke file. karena itu command berikut ini:

% nocats <> bother

akan memerintah program nocats untuk membaca input dari satu file (stuff) dan menuliskannya ke file yang lain (bother), dan menghindarkan untuk memasukkan atau menampilkan data pada console. Yang penting dicatat disini adalah program nocats tidak perlu mengetahui mengenai redirection ini. Program nocats tetap menganggap input berasal dari keyboard dan output ke console, tapi shell yang mengerjakan semua ini dengan memasukkan input dan output secara temporer ke dalam file.

untuk memaskkan output ke dalam file yang sudah ada dengan tidak menghapus isi yang sudah ada dalam file dapat digunakan simbol dua buah tanda lebih-dari (>>), bisa dilihat dalam contoh berikut:

zippity > somefile
doodah >> somefile

command zippity dijalankan pertama kali, output akan ditaruh pada file somefile. Kemudian jalankan command doodah, dan output dari command ini ditambahkan pada file somefile
yang sudah ada dengan tidak menghapus isinya.

Catatan: penting untuk diingat bahwa melakukan piping dengan tanda > tunggal akan menghapus isi dari output file jika file tersebut sudah ada sebelumnya.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home