Perintah Pipe, Grep dan Sort di Linux/Unix dengan Contoh

⚡ Ringkasan Cerdas

Perintah pipe, grep, dan sort di Linux dan Unix menghubungkan dan menyaring teks: pipe memasukkan output dari satu perintah ke perintah berikutnya, grep mencari pola, dan sort mengatur baris, sementara filter mengubah data di antara baris-baris tersebut.

  • 🔗 Pipa: Simbol pipa | meneruskan output dari satu perintah sebagai input untuk perintah berikutnya.
  • 📄 Pemanggilan: Perintah `cat` yang dialirkan ke `less`, `pg`, atau `more` akan menampilkan berkas panjang satu layar dalam satu waktu.
  • 🔍 terima: Perintah grep mencari baris dalam sebuah file yang cocok dengan string atau pola tertentu.
  • ️ Opsi grep: Opsi seperti -v, -c, -n, -i, dan -l membalikkan urutan, menghitung, memberi nomor, mengabaikan perbedaan huruf besar dan kecil, serta menampilkan daftar file.
  • 🔤 menyortir: Perintah sort mengurutkan baris-baris dalam sebuah file, dengan opsi -r, -n, dan -f untuk pengurutan terbalik, numerik, dan tidak peka huruf besar/kecil.
  • 🧪 filter: Perintah filter seperti grep, sort, awk, sed, dan wc memproses input yang dialirkan melalui pipa dan menghasilkan output.
  • 🤖 Bantuan AI: Asisten AI dan GitHub Copilot dapat membangun dan menjelaskan alur kerja pipe, grep, dan sort.

Perintah pipe, grep, dan sort di Linux dan Unix beserta contohnya.

Pipes, grep, dan sort termasuk di antara alat yang paling sering digunakan pada Linux baris perintah, karena memungkinkan Anda menghubungkan perintah-perintah kecil menjadi satu alur kerja yang ampuh. Halaman ini menjelaskan masing-masing dengan contoh yang telah dikerjakan, kemudian menunjukkan bagaimana filter menghubungkannya.

Apa itu Pipa di Linux?

Pipe adalah perintah di Linux yang memungkinkan Anda menggunakan dua perintah atau lebih sedemikian rupa sehingga output dari satu perintah berfungsi sebagai input untuk perintah berikutnya. Singkatnya, output dari setiap proses langsung masuk sebagai input ke proses berikutnya, seperti sebuah saluran pipa. Simbol '|' menunjukkan sebuah pipe.

Pipe membantu Anda menggabungkan dua perintah atau lebih secara bersamaan dan menjalankannya secara berurutan. Anda dapat menggunakan perintah-perintah ampuh yang melakukan tugas-tugas kompleks dengan cepat.

Mari kita pahami ini dengan sebuah contoh.

Saat Anda menggunakan perintah 'cat' untuk melihat file yang terdiri dari beberapa halaman, prompt akan langsung melompat ke halaman terakhir file, dan Anda tidak akan melihat konten di bagian tengahnya.

Untuk menghindari hal ini, Anda dapat mengalirkan output perintah 'cat' ke 'less', yang hanya menampilkan konten sepanjang satu panjang gulir dalam satu waktu.

cat filename | less

Sebuah ilustrasi akan memperjelasnya. Diagram di bawah ini menunjukkan bagaimana sebuah pipa meneruskan output dari satu perintah ke perintah berikutnya.

Diagram sebuah pipe Linux yang meneruskan output dari satu perintah sebagai input untuk perintah berikutnya.

perintah 'pg' dan 'lainnya'

Selain 'less', Anda juga dapat menggunakan perintah pg atau more:

cat Filename | pg

or

cat Filename | more

Anda kemudian dapat melihat file dalam bagian-bagian yang mudah dicerna dan menggulir ke bawah hanya dengan menekan tombol enter. Tangkapan layar di bawah ini menunjukkan file yang dipaginasi dengan perintah more.

Perintah `cat` dialihkan ke perintah `more` untuk memproses berkas panjang satu layar sekaligus.

Perintah 'grep'

Misalkan Anda ingin mencari informasi tertentu, seperti kode pos, dalam sebuah file teks.

Anda dapat menelusuri isi secara manual sendiri untuk trace informasi tersebut. Pilihan yang lebih baik adalah menggunakan grep Perintah ini memindai dokumen untuk mencari informasi yang diinginkan dan menyajikan hasilnya dalam format yang Anda inginkan.

sintaks:

grep search_string

Mari kita lihat cara kerjanya. Tangkapan layar di bawah ini menunjukkan hasil pencarian.

Perintah grep mencari string "Apple" dan "Eat" dalam file sampel.

Di sini, perintah grep telah mencari string 'Apple' dan 'Eat' dalam file 'sample'. Opsi berikut dapat digunakan dengan perintah ini.

pilihan fungsi
-v Menampilkan semua baris yang tidak cocok dengan string yang dicari
-c Hanya menampilkan jumlah garis yang cocok
-n Menampilkan garis yang cocok dan nomornya
-i Cocok untuk huruf besar dan kecil
-l Hanya menampilkan nama file dengan string

Mari kita coba opsi '-i' pada file yang sama seperti yang digunakan di atas. Tangkapan layar di bawah menunjukkan hasil yang tidak peka terhadap huruf besar/kecil.

grep -i melakukan pencarian huruf a tanpa memperhatikan huruf besar/kecil.

Dengan menggunakan opsi '-i', grep telah menyaring string 'a' (tanpa memperhatikan huruf besar/kecil) dari semua baris.

Perintah 'sortir'

Perintah ini membantu mengurutkan isi file secara alfabetis.

Sintaks untuk perintah ini adalah:

sort Filename

Perhatikan isi sebuah file, seperti yang ditunjukkan dengan gambar kucing di bawah ini.

Perintah `cat` menampilkan isi file `abc` yang belum diurutkan.

Menjalankan perintah sort akan menyusun baris-baris tersebut dalam urutan abjad, seperti yang ditunjukkan di bawah ini.

Perintah sort mengatur isi file abc dalam urutan abjad.

Terdapat pula ekstensi untuk perintah ini, dan daftarnya tercantum di bawah ini.

pilihan fungsi
-r Reversepenyortiran s
-n Urutkan secara numerik
-f Pengurutan tidak peka huruf besar/kecil

Contoh di bawah ini menunjukkan pengurutan terbalik dari konten dalam file 'abc'.

Perintah sort -r membalikkan pengurutan isi file abc

Apa itu Filter?

Linux memiliki banyak perintah filter seperti awk, grep, sed, spell, dan wc. Sebuah filter menerima input dari satu perintah, melakukan beberapa pemrosesan, dan memberikan output.

Saat Anda menggabungkan dua perintah, output yang 'difilter' dari perintah pertama diberikan ke perintah berikutnya. Diagram di bawah ini mengilustrasikan bagaimana filter masuk ke dalam sebuah pipeline.

Diagram filter Linux yang menerima input melalui pipa, memprosesnya, dan menghasilkan output.

Mari kita pahami hal ini dengan bantuan sebuah contoh. Kita memiliki file 'sample' berikut, yang ditunjukkan dengan gambar kucing di bawah ini.

Perintah `cat` menampilkan isi file sampel sebelum difilter.

Kita ingin hanya menyoroti baris yang tidak mengandung karakter 'a', tetapi hasilnya harus dalam urutan terbalik. Untuk itu, sintaks berikut dapat digunakan:

cat sample | grep -v a | sort -r

Mari kita lihat hasilnya, yang ditunjukkan pada tangkapan layar di bawah ini.

Perintah `cat` dijalankan melalui `grep -v` dan `sort -r` yang menghasilkan baris-baris yang diurutkan terbalik tanpa huruf `a`.

Pertanyaan Umum Demo Slot

Tanda pipa (|) mengirimkan output dari satu perintah langsung ke perintah lain, menghubungkannya menjadi satu. Pengalihan (> dan <) menghubungkan perintah ke sebuah file, menulis output ke file atau membaca input dari file. Pipa menghubungkan perintah; pengalihan menghubungkan perintah dan file.

grep adalah singkatan dari Global Regular Expression Print. Perintah ini memindai file atau input baris demi baris dan mencetak setiap baris yang cocok dengan pola yang Anda berikan. Nama ini berasal dari perintah editor ed lama g/re/p, yang melakukan pencarian yang sama.

Perintah sort memiliki opsi -u yang mengurutkan dan menghapus baris duplikat dalam satu langkah: sort -u file. Anda juga dapat menyalurkan sort ke uniq, seperti sort file | uniq, karena uniq hanya menghapus duplikat yang sudah berdekatan.

Akhiri pipeline dengan pengalihan: `cat sample | grep -va | sort -r > result.txt` menulis output akhir ke sebuah file. Untuk melihat output di layar dan menyimpannya secara bersamaan, gunakan perintah `tee` sebagai gantinya.

Perintah `grep` mencari baris yang cocok dengan pola teks di dalam file. Perintah `find` menemukan file dan direktori berdasarkan nama, ukuran, tipe, atau tanggal. Singkatnya, `grep` melihat isi file, sedangkan `find` mencari file di seluruh struktur direktori.

Perintah `tee` membaca dari sebuah pipe dan menulis data ke layar serta satu atau lebih file sekaligus, misalnya `grep error log | tee errors.txt`. Perintah ini memungkinkan Anda menyimpan output sementara tanpa mengganggu alur kerja.

Asisten AI dapat menyarankan rangkaian perintah yang tepat dari permintaan dalam bahasa Inggris sederhana, menjelaskan flag grep atau sort yang tidak dikenal, dan mendeteksi kesalahan dalam pipeline. Alat pembelajaran mesin juga memindai output log yang dialirkan untuk menandai anomali yang mungkin terlewatkan oleh penyaringan manual.

Ya. Kopilot GitHub Dapat menghasilkan pipeline yang menggabungkan perintah `cat`, `grep`, dan `sort` dari komentar singkat yang menjelaskan apa yang Anda butuhkan, dan menyelesaikan perintah saat Anda mengetik. RevTinjau setiap alur kerja yang disarankan terhadap data sampel, terutama opsi yang menyusun ulang atau menghapus baris.

Ringkaslah postingan ini dengan: