GNU/Linux >> Belajar Linux >  >> Linux

Cara menemukan string dalam file di Linux

Terkadang Anda mungkin perlu mencari kata atau string tertentu di dalam file. Untuk melakukan ini, hampir setiap editor teks memiliki beberapa implementasi GUI untuk membantu Anda. Namun bagi pengguna Linux, jauh lebih produktif dan nyaman untuk melakukan pencarian ini dari baris perintah.

Faktanya, Linux memiliki utilitas baris perintah yang kuat dan nyaman – perintah grep untuk tujuan ini. Dengan ini, Anda dapat mencari string tertentu tidak hanya dalam satu file tetapi beberapa file untuk pencarian yang lebih komprehensif.

Namun, sebelum Anda dapat menggunakan perintah grep, Anda harus terlebih dahulu mengetahui cara kerjanya dan sintaksisnya. Jadi, untuk membantu Anda, kami telah menyusun panduan terperinci tentang penggunaan perintah grep untuk membantu Anda menemukan string dalam file di Linux. Tidak hanya itu, kami juga akan menunjukkan cara mencari string dalam file melalui editor teks baris perintah dan editor teks GUI.

Catatan:Untuk tutorial ini, kami telah membuat dua file teks demo – demofile.txt dan demofile02.txt. Kami akan menggunakan perintah grep untuk menemukan string dalam file-file ini. Berikut adalah tampilan isi dari kedua file tersebut sehingga Anda mengetahui cara kerja perintah tersebut.

Isi demofile.txt:

This is a demo file that I have created for demonstration purposes.
This contains a bunch of words to create sentences that finally end with a period.
This is for the grep example.

Isi demofile02.txt:

This is another demo file that I'll use for this demonstration.
This one is similar to the last one as it contains three lines with some words.
This second file will help to provide some diversified examples.

Menemukan string dalam file melalui baris perintah (metode GREP)

GREP adalah kependekan dari Global Regular Expression Print. Ini "Global" karena dapat mencari seluruh sistem Linux Anda. "Ekspresi Reguler" adalah apa yang kita sebut pola pencarian teks yang akan kita gunakan dengan perintah. Dan "Cetak" menandakan bahwa itu akan mencetak hasil pencarian segera setelah menemukan kecocokan berdasarkan ekspresi reguler yang disediakan.

Sekarang setelah Anda mengetahui apa itu perintah grep, mari kita lihat bagaimana kita dapat menggunakannya. Berikut adalah sintaks untuk menggunakan perintah grep untuk menemukan string dalam file:

$ grep string filename

Anda perlu mengganti ekspresi "string" dengan "ekspresi reguler" yang ingin Anda gunakan dan "nama file" dengan nama file tempat Anda ingin mencari string.

#1. Menggunakan GREP untuk menemukan string dalam satu file

Jadi, katakanlah jika Anda ingin mencari kata “demonstrasi” di file “demofile.txt”, Anda perlu menggunakan perintah ini:

$ grep demonstration demofile.txt

Yang memberikan output:

Seperti yang Anda lihat, perintah mengambil seluruh baris yang berisi string yang disediakan. Jika string yang ditentukan muncul dalam beberapa baris, itu akan mencetak semuanya. Mari kita lihat apakah ini berfungsi dengan mencari string "Ini" di file "demofile.txt".

$ grep This demofile.txt

Dan hasilnya adalah:

Perhatikan bagaimana Anda menggunakan string "ini" terlebih dahulu, dan itu tidak mencetak apa pun. Hanya ketika Anda memasukkan "Ini" Anda mendapatkan kecocokan. Karena itu, Anda harus ingat bahwa perintah grep peka huruf besar/kecil.

Untuk mengabaikan kasus ini, Anda harus memasukkan perintah ini sebagai gantinya:

$ grep -i this demofile.txt

Seperti yang Anda lihat sekarang, meskipun string yang disediakan adalah "ini", perintahnya cocok dengan "Ini" dan mencetak jawaban itu.

#2. Menggunakan GREP untuk menemukan string yang sama di banyak file

Untuk mencari melalui beberapa file untuk string yang disediakan, yang perlu Anda lakukan adalah menambahkan perintah dengan semua nama file.

Berikut adalah contoh. Disini kita mencari string “words” pada file “demofile.txt” dan “demofile02.txt”:

$ grep words demofile.txt demofile02.txt

Dan hasilnya adalah:

Seperti yang Anda lihat, perintah grep tidak hanya akan menampilkan hasil yang cocok, tetapi juga dengan mudah memberi label dari file mana.

#3. Menggunakan GREP untuk menemukan banyak string dalam banyak file

Anda juga dapat menggunakan grep untuk menemukan banyak string dalam satu atau beberapa file. Ini adalah sintaks yang harus Anda gunakan:

$ grep -E 'pattern1|pattern2|pattern3|...' filename1 filename2 filename3 ...

Opsi -E yang kita masukkan memperlakukan pola berikut sebagai ekspresi reguler yang diperluas, yang memungkinkan kita untuk mencari beberapa string.

Sekarang mari kita gunakan apa yang kita pelajari untuk mencari string “file” dan “words” di dua file:“demofile.txt” dan “demofile02.txt”:

$ grep -E 'file|word' demofile.txt demofile02.txt

Dan hasilnya adalah:

#4. Tips dan trik menggunakan perintah GREP untuk menemukan string

Terlepas dari kesederhanaannya secara keseluruhan, perintah grep sangat kuat. Berikut adalah beberapa cara Anda dapat menggunakan perintah grep untuk pencarian string lanjutan.

Misalnya, tahukah Anda bahwa Anda dapat menggunakan perintah grep dengan wildcard? Mari kita pertimbangkan perintah ini:

$ grep word demofile*

Yang memberikan output:

Seperti yang Anda lihat, perintah telah mencari dan sekarang menampilkan hasil untuk kedua file "demofile.txt" dan "demofile02.txt". Ini karena kami menggunakan wildcard asterisk (*) yang digunakan untuk mewakili satu atau banyak kemunculan karakter apa pun.

Untuk informasi lebih lanjut mengenai berbagai jenis wildcard dan cara menggunakannya, Anda dapat membaca ini:Wildcard di Linux dijelaskan dengan 10 contoh.

Selanjutnya, perintah grep juga mendukung banyak opsi perintah. Kami telah melihat dua di antaranya sekarang:

  • -i:digunakan untuk mengabaikan huruf besar/kecil.
  • -E:digunakan untuk memperlakukan string berikut sebagai ekspresi reguler yang diperluas.

Ada banyak opsi perintah grep lainnya seperti:

  • -r:lakukan pencarian rekursif.
  • -c:hitung jumlah total kemunculan string.
  • -n:mencetak nomor baris tempat string muncul.
  • -o:hanya mencetak string yang cocok dan tidak mencetak seluruh baris.

Semua yang kita diskusikan sampai sekarang seharusnya banyak membantu Anda mencari string dalam file. Namun, jika Anda ingin menguasai perintah GREP, kami sarankan Anda membaca dua artikel ini:

  • Menggunakan perintah GREP di Linux dengan contoh 
  • 5 penggunaan perintah GREP teratas di Linux 

Menemukan string dalam file melalui baris perintah (Menggunakan editor teks baris perintah)

Perintah grep adalah alat yang ampuh yang dapat membantu Anda melakukan pencarian lanjutan untuk mencocokkan string dengan beberapa file dan direktori di PC Linux Anda. Namun, jika Anda sudah membuka file di editor teks baris perintah, maka tidak perlu keluar dari editor file dan menggunakan perintah grep.

Faktanya, sebagian besar editor teks baris perintah sudah dilengkapi dengan fungsi pencarian bawaan.

Sekarang, tutorial ini berada di luar cakupan untuk membahas setiap editor teks baris perintah dan cara menemukan string dalam file yang dibuka di editor teks tersebut. Karena itu, kita akan melihat dua editor teks baris perintah paling populer yang pasti akan Anda gunakan:

Bagaimana menemukan string teks di nano?

Katakanlah Anda memiliki file yang dibuka di editor teks nano. Dalam hal ini, yang perlu Anda lakukan hanyalah menekan Ctrl+W, dan Anda akan menemukan perintah baru untuk mengetikkan string.

Setelah selesai, tekan Enter, dan kursor akan mendarat di karakter pertama dari kemunculan pertama dari string yang dicari. Anda dapat terus menekan Enter untuk melompat ke instance string lainnya jika ada.

Bagaimana menemukan string teks di vim?

Jika Anda menggunakan editor teks vim, Anda dapat mengetikkan :/ diikuti dengan string yang ingin Anda cari lalu tekan Enter. Mirip dengan sebelumnya, itu akan mendaratkan kursor pada kemunculan pertama dari string yang dicari. Di sini juga, Anda dapat terus menekan Enter untuk melompat ke contoh string lainnya.

Temukan string dalam file melalui baris perintah (metode GUI)

Bahkan ada metode GUI untuk menemukan string dalam file. Intinya, ini mirip dengan fungsi "temukan dan ganti" yang bisa Anda lihat di Microsoft Word; namun, ini akan bervariasi berdasarkan editor teks GUI yang Anda gunakan.

Sekarang, seperti yang Anda ketahui, ada ratusan editor teks, dan tidak praktis untuk membahas semuanya di sini. Namun, semuanya berfungsi sama, jadi Anda tidak akan mengalami masalah saat bekerja dengan orang lain setelah mengetahui cara kerja salah satunya.

Untuk tutorial ini, kita akan menggunakan editor teks default yang disertakan dengan Ubuntu, yang disebut – “Editor Teks.”

Seperti yang Anda lihat dari gambar, kami telah membuka demofile.txt pada editor. Sekarang, kita klik menu tarik-turun, yang menampilkan opsi untuk “Temukan” dan “Temukan dan Ganti”, yang dapat kita gunakan untuk menemukan string apa pun di file yang dibuka.

Menutup

Jadi itu membawa kita ke akhir tutorial singkat ini tentang menemukan string dalam file di Linux. Kami harap Anda menemukan ini berguna dan membantu Anda menjadi lebih produktif dengan cara Anda mencari string tertentu di sistem Linux Anda.

Jika Anda memiliki pertanyaan, tinggalkan komentar, dan kami pasti akan membantu Anda dengan pertanyaan Anda.

Jika Anda memulai dengan Linux, jangan lupa untuk melihat seri Learn Linux kami. Itu dipenuhi dengan banyak tutorial, cara, dan panduan yang luar biasa, yang dirancang untuk pemula dan pengguna yang lebih berpengalaman untuk membantu Anda menjadi pengguna Linux yang hebat.


Linux
  1. Cara Menemukan File Terlama Di Pohon Direktori Di Linux

  2. Bagaimana Mengganti Nama File di Linux?

  3. Cara menemukan baris yang berisi string di linux

  1. Cara menemukan File di Linux

  2. Linux – Bagaimana Menemukan Tanggal Pembuatan File?

  3. Cara grep \n dalam file

  1. Perintah grep Linux

  2. Bagaimana cara memulihkan file yang dihapus di Linux?

  3. Cara mencari file dengan name=php.ini di linux menggunakan perintah grep