Seperti yang disarankan oleh nama grep, pola untuk mencari dijelaskan menggunakan ekspresi reguler. Ekspresi reguler adalah jenis string khusus yang menggambarkan pola untuk dicocokkan, ditemukan, dan dikelola. Untuk mempelajari lebih lanjut tentang grep dan ekspresi reguler, periksa menggunakan grep dan egrep dengan ekspresi reguler.
Untuk tujuan demonstrasi, ambil contoh file teks. Dalam contoh ini, unduh GNU General Public License v3.0 file teks.
Pencarian dasar
Cara mendasar menggunakan grep adalah mencari string dasar.
Lihatlah perintah grep berikut. Ini akan mencari kata "GNU" di file teks.
$ grep "GNU" gpl-3.0.txt
Untuk menunjukkan nomor baris, gunakan bendera “-n”.
$ grep -n "GNU" gpl-3.0.txt
Untuk melakukan pencarian case-insensitive menggunakan grep, gunakan flag “-i”.
$ grep -ni "gnu" gpl-3.0.txt
Anda mungkin tidak ingin melihat kecocokan pencarian tetapi hanya nama file tempat kecocokan terjadi dalam beberapa situasi. Untuk mencetak hanya nama file, gunakan tanda “-l”. Di sini, tanda bintang menunjukkan untuk menggunakan semua file teks di direktori saat ini.
$ grep -l "gnu" *
Kami juga dapat menyalurkan output dari perintah lain ke grep.
$ kucing gpl-3.0.txt | grep -n "GNU"
Ekspresi reguler
Regex menawarkan cara cerdas untuk menyempurnakan pencarian. Ini memiliki aturannya sendiri. Namun, aplikasi dan bahasa pemrograman yang berbeda mengimplementasikan ekspresi reguler secara berbeda. Berikut adalah beberapa contoh yang dapat Anda gunakan dengan grep.
Untuk menentukan bahwa string dapat ditemukan di awal baris, gunakan simbol tanda sisipan (^).
$ grep -n “^GNU” gpl-3.0.txt
Untuk menentukan bahwa string dapat ditemukan di akhir baris, gunakan tanda dolar ($).
$ grep -n "ke$" gpl-3.0.txt
Untuk menggambarkan bahwa bisa ada karakter apa pun di lokasi tertentu dari pola, gunakan karakter titik (.). Misalnya, ungkapan “G.U” valid jika ada karakter antara “G” dan “U”.
$ grep -n “G.U” gpl-3.0.txt
Untuk menggambarkan bahwa mungkin ada subset karakter di lokasi tertentu dari pola, gunakan tanda kurung ([]). Misalnya, ungkapan “t[wo]o” memberi tahu bahwa kecocokan hanya valid untuk “dua” dan “terlalu”.
$ grep -n “t[wo]o” gpl-3.0.txt
Ekspresi reguler yang diperluas
Seperti namanya, ekspresi reguler yang diperluas dapat melakukan hal-hal yang lebih kompleks daripada ekspresi reguler dasar. Untuk menggunakan ekspresi reguler yang diperluas dengan grep, Anda harus menggunakan flag “-E”.
$ grep -nE Untuk mencari dua string yang berbeda, gunakan operator ATAU (|).
$ grep -nE “GNU|Umum|Lisensi” gpl-3.0.txt
Menemukan teks dalam file
Sekarang datang bagian utama main. Alih-alih secara manual memberi tahu grep file untuk melakukan pencarian, grep dapat melakukannya secara otomatis. Dalam perintah berikut, grep akan menggunakan semua file teks yang tersedia di direktori saat ini untuk mencari pola:.
$ grep * Jika Anda ingin grep untuk melakukan pencarian di direktori yang berbeda, maka Anda harus menentukan lokasinya.
$ grep
Jika ada folder, grep tidak menjelajahinya secara default. Untuk memberitahu grep untuk mencari secara rekursif, gunakan flag “-R”.
$ grep -nR
Grep GUI
Jika Anda lebih suka bekerja dengan GUI tetapi masih ingin menikmati fitur grep, periksa searchmonkey. Ini adalah solusi front-end untuk grep. Paket ini tersedia di hampir semua distro Linux utama.
Temukan teks dalam file menggunakan nano
GNU Nano adalah editor teks sederhana dan kuat yang hadir dengan semua distro Linux. Ini memiliki fitur bawaan untuk mencari teks dalam file teks.
Perhatikan bahwa dalam metode ini, Anda harus membuka file teks, dan mencari secara manual. Itu bisa dilakukan jika hanya ada beberapa file teks untuk dikerjakan. Jika masih ada lagi, maka menggunakan grep adalah pilihan yang paling optimal.
Buka file teks di nano.
$ nano
Untuk mencari kecocokan string, tekan "Ctrl + W". Setelah mengetik string yang akan dicari, tekan "Enter".
Temukan teks dalam file menggunakan Vim
Vim adalah editor teks terkenal dan bereputasi. Ini setara dengan baris perintah dari editor teks modern. Vim hadir dengan banyak fitur canggih seperti plugin, makro, pelengkapan otomatis, filter, dll.
Mirip dengan nano, Vim bekerja dengan satu file pada satu waktu. Jika Anda memiliki banyak file teks, maka menggunakan grep adalah cara paling optimal untuk melakukannya.
Untuk mencari dalam file teks, pertama, buka di Vim.
$ vim
Masukkan perintah Vim berikut dan tekan "Enter".
$:/
Temukan teks dalam file menggunakan Editor Teks GNOME
Editor Teks GNOME adalah editor teks yang disertakan dengan desktop GNOME. Ini adalah editor teks sederhana dengan semua fitur dasar yang Anda harapkan. Ini adalah alternatif yang bagus untuk editor teks baris perintah.
Mirip dengan nano dan vim, kehati-hatian yang sama berlaku untuk metode ini. Jika jumlah file teks besar, maka Anda lebih baik tetap menggunakan grep.
Buka file teks di Editor Teks. Tekan "Ctrl + F" untuk membuka bilah pencarian.
Temukan teks dalam file menggunakan Kode VS
Visual Studio Code adalah editor teks yang kuat dengan banyak fitur. Ini dioptimalkan untuk programmer untuk digunakan seolah-olah itu adalah IDE yang lengkap. Ini tersedia di hampir semua distro Linux utama.
Instal paket snap Kode Visual Studio.
$ sudo snap kode instal --classic
Buka file teks dalam Kode VS. Tekan "Ctrl + F" untuk mulai mencari.
Pikiran terakhir
Ada banyak cara untuk mencari teks dalam file. Ini adalah tugas yang mudah untuk dikuasai. Sangat disarankan untuk menguasai perintah grep karena ia menawarkan nilai tertinggi dalam hal efisiensi dan kemudahan penggunaan.
Jika Anda lebih suka GUI, maka ada banyak editor teks untuk dipilih. Setiap editor teks modern akan menyediakan opsi pencarian teks.
Selamat berkomputasi!