mobicow

Kamis, 06 Oktober 2011

>> Pipes - Dapatkan hasil maksimal dari shell anda

Pipa mungkin salah satu fitur yang paling penting yang tersedia di shell Unix. Fitur ini hanya menakjubkan, khusus untuk orang-orang yang tidak akrab dengan konsep yang benar-benar terkejut pipa ketika mereka melihatnya bekerja. Tanpa penundaan lebih lanjut, mari kita ke inti masalah.
Penjelasan:
Pipa seperti namanya adalah semacam tabung berongga (pipa) di mana Anda dapat menempatkan data ke dalam satu ujung dan keluar dari ujung lainnya. Whats menggunakan? Anda akan melihat segera .. Menggunakan pipa Anda dapat menghubungkan dua program. Menggunakan pipa Anda dapat membuat output dari perintah tertentu untuk bertindak sebagai input untuk perintah lain.
Hal ini paling baik dijelaskan dengan menggunakan contoh
$ Ls | grep 'mp3'
Perintah ini pada dasarnya terdiri dari 2 perintah bergabung dengan pipa. Perintah pertama mendapat daftar dari direktori saat ini dan kemudian pipa ke (mengirim ke) perintah kedua yang adalah perintah grep. Perintah grep memilih baris-baris dari daftar direktori (yang diterima dari perintah ls) memiliki string 'mp3' di dalamnya. Jadi pada dasarnya sebagai hasil dari perintah ini Anda akan mendapatkan daftar file / direktori yang memiliki huruf 'mp3' dalam nama mereka.
Anda mungkin berpikir ini tidak benar-benar berguna, ketika Anda bisa menggunakan beberapa bentuk perintah ls sendiri (mungkin lebih pendek) untuk mendapatkan beberapa pekerjaan dilakukan. Penggunaan pipa menjadi jelas seperti yang Anda desain perintah yang lebih kompleks.

Ambil perintah berikut. Yang satu ini juga sederhana, tetapi Anda akan mendapatkan ide di balik pipa.
$ Ls | grep 'mp3' | sort-r
Perintah ini akan melakukan hal yang sama seperti yang di atas, tapi kali ini bukannya menampilkan semua file / direktori memiliki string 'mp3' dalam nama mereka, hasil ini diteruskan kepada perintah semacam melalui pipa. Perintah sort dengan opsi-r macam hasil dalam urutan terbalik. Dan akhirnya menampilkan hasilnya.

Jadi seperti yang Anda lihat, pipa membiarkan Anda lulus output dari satu perintah ke perintah lain masukan. Anda dapat membawa pada rantai ini selama yang Anda inginkan (Anda dapat menggunakan pipa antara 5,6,7 .. perintah .. berapa banyak yang Anda inginkan) .. dan Anda bisa mendapatkan output yang sangat disesuaikan. Kemampuan Unix shell ketika pipa yang digunakan secara efektif adalah diserahkan kepada imajinasi Anda.
Singkatnya:
Pada dasarnya pipa dapat digunakan dengan sebagian besar perintah Unix. Tetapi konsep dasar tetap sama - output dari perintah pertama bertindak sebagai input untuk perintah kedua. Anda harus berhati-hati untuk memeriksa bahwa output dari perintah pertama adalah masukan diterima oleh perintah kedua. Ini tidak boleh yang perintah pertama memiliki output dalam beberapa format selain format teks dan perintah kedua bekerja dengan input teks saja. Jika pada semua hal semacam ini terjadi, sebagian besar Anda akan mendapatkan pesan kesalahan atau Anda harus mengetikkan <Ctrl>-C untuk keluar dari eksekusi dari perintah dan kembali ke prompt.