Sunday, April 01, 2007

LINUX BASIC, Apakah pipeline dalam Linux dapat membuat kita kaya?

Mengirim output dari satu program ke dalam program lainnya.

Linux menyediakan banyak utiliti untuk memanipulasi data. Anda dapat melakukan proses search, sort, slice, dice dan transform data yang disimpan dalam file dengan bermacam cara. Suatu pipe (juga disebut pipeline) adalah fitur dari shell yang sangat berguna yang memungkinkan anda mengirim output dari satu program langsung ke program lainnya.

Misalnya, anda memiliki satu file berisi informasi dari sejumlah orang, termasuk keterangan mengenai nama, umur, kode pos dan nomer telepon dari tiap-tiap orang seperti berikut ini:

Roosevelt Tommy 38 54579 555-1212
Nixon Edward 19 37583 246-3457
Roosevelt Freddie 47 11745 674-6972
Lincoln Albert 26 26452 916-5763

Jika anda ingin mencari semua entri berisi Roosevelt dan mengurutkan berdasar kode pos, dapat menjalankan command berikut:

grep Roosevelt people.txt > grep.out
sort +3 grep.out
rm grep.out

karena command grep dan sort belum dibahas, command diatas dapat diartikan seperti berikut ini:
carilah entri/baris yang berisi kata Roosevelt dalam file people.txt dan simpan dalam satu file bernama grep.out. Kemudian urutkan file grep.out pada kolom ke-4 dan tampilkan hasilnya di console sebelum menghapus file grep.out. (tanda +3 artinya memerintahkan proses pengurutan berdasar kolom ke-4).

Namun anda dapat menghindari menjalankan proses membuat dan menghapust file temporer (grep.out) dengan mengkombinasikan operasi tersebut dalam command seperti berikut ini:

grep Roosevelt people.txt | sort +3

garis vertikal memerintahkan shell supaya output dari program sebelah kiri (grep) dikirim atau menjadi input dari program sebelah kanan (sort). Di background, shell mungkin saja menjalankan tiga command seperti pada contoh sebelumnya, tapi anda tidak perlu memperhatikan ini, anda sudah mengkombinasikannya menjadi satu command.

Anda dapat menjalankan berapapun perintah atau command dalam pipeline, bahkan dapat mengkombinasikan pipe dengan redirection, sebagaimana contoh berikut:

grep Roosevelt people.txt | sort +3 > sort-results

disini, dikerjakan proses yang sama seperti contoh sebelumnya, tetapi hasilnya disimpan dalam satu file bernama sort-results.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home