Seperti yang ditunjukkan oleh nama grep, corak yang akan dicari digambarkan menggunakan ungkapan biasa. Ungkapan biasa adalah jenis rentetan khas yang menggambarkan corak untuk dipadankan, dicari dan dikendalikan. Untuk mengetahui lebih lanjut mengenai grep dan ungkapan biasa, periksa menggunakan grep dan egrep dengan ungkapan biasa.
Untuk tujuan demonstrasi, ambil contoh fail teks. Dalam contoh ini, muat turun Lesen Awam Umum GNU v3.0 fail teks.
Pencarian asas
Cara asas menggunakan grep adalah mencari rentetan asas.
Lihat arahan grep berikut. Ia akan mencari perkataan "GNU" dalam fail teks.
$ grep "GNU" gpl-3.0.txt
Untuk menunjukkan nombor garis, gunakan bendera "-n".
$ grep -n "GNU" gpl-3.0.txt
Untuk melakukan carian tanpa huruf besar-kecil menggunakan grep, gunakan bendera "-i".
$ grep -ni "gnu" gpl-3.0.txt
Anda mungkin tidak mahu melihat carian yang sesuai tetapi hanya nama fail di mana pertandingan berlaku dalam beberapa keadaan. Untuk mencetak hanya nama fail, gunakan bendera "-l". Di sini, tanda bintang menunjukkan untuk menggunakan semua fail teks dalam direktori semasa.
$ grep -l "gnu" *
Kami juga dapat mengeluarkan output dari perintah lain untuk grep.
$ kucing gpl-3.0.txt | grep -n "GNU"
Ekspresi biasa
Regex menawarkan kaedah pintar untuk memperincikan carian. Ia mempunyai peraturannya sendiri. Walau bagaimanapun, aplikasi dan bahasa pengaturcaraan yang berbeza menerapkan ekspresi biasa secara berbeza. Berikut adalah beberapa contoh yang boleh anda gunakan dengan grep.
Untuk menentukan bahawa rentetan dapat dijumpai pada permulaan garis, gunakan simbol karet (^).
$ grep -n “^ GNU” gpl-3.0.txt
Untuk menentukan bahawa rentetan dapat dijumpai di hujung baris, gunakan tanda dolar ($).
$ grep -n "hingga $" gpl-3.0.txt
Untuk menggambarkan bahawa boleh ada watak di lokasi tertentu corak, gunakan watak titik (.). Contohnya, ungkapan “G.U "sah jika ada watak antara" G "dan" U ".
$ grep -n “G.U ”gpl-3.0.txt
Untuk menerangkan bahawa terdapat subkumpulan watak di lokasi tertentu corak, gunakan tanda kurung ([]). Sebagai contoh, ungkapan "t [wo] o" memberitahu bahawa pertandingan hanya berlaku untuk "dua" dan "terlalu" saja.
$ grep -n “t [wo] o” gpl-3.0.txt
Ungkapan biasa yang dilanjutkan
Seperti namanya, ungkapan biasa yang diperpanjang dapat melakukan perkara yang lebih kompleks daripada ungkapan biasa biasa. Untuk menggunakan ungkapan biasa yang diperpanjang dengan grep, anda harus menggunakan bendera "-E".
$ grep -nE Untuk mencari dua rentetan yang berbeza, gunakan operator OR (|).
$ grep -nE "GNU | Umum | Lesen" gpl-3.0.txt
Mencari teks dalam fail
Sekarang datang bahagian utama. Daripada secara manual memberitahu grep fail untuk menjalankan carian, grep dapat melakukannya secara automatik. Dalam perintah berikut, grep akan menggunakan semua fail teks yang ada di direktori semasa untuk mencari corak.
$ grep * Sekiranya anda mahu melakukan grep untuk melakukan carian di direktori lain, maka anda harus menentukan lokasinya.
$ grep
Sekiranya terdapat folder, grep tidak menerokainya secara lalai. Untuk memberitahu grep untuk mencari secara berulang, gunakan bendera "-R".
$ grep -nR
Grep GUI
Sekiranya anda lebih suka bekerja dengan GUI tetapi masih mahu menikmati ciri-ciri grep, maka periksa searchmonkey. Ini adalah penyelesaian depan untuk grep. Pakej ini terdapat di hampir semua distro Linux utama.
Cari teks dalam fail menggunakan nano
GNU Nano adalah penyunting teks ringkas dan hebat yang disertakan dengan mana-mana distro Linux. Ia mempunyai ciri bawaan untuk mencari teks dalam fail teks.
Perhatikan bahawa dalam kaedah ini, anda harus membuka fail teks, dan mencari secara manual. Ia boleh dilakukan sekiranya hanya terdapat sebilangan kecil fail teks untuk dikerjakan. Sekiranya ada lebih banyak lagi, maka menggunakan grep adalah pilihan yang paling optimum.
Buka fail teks di nano.
$ nano
Untuk mencari padanan rentetan, tekan "Ctrl + W". Setelah menaip rentetan untuk dicari, tekan "Enter".
Cari teks dalam fail menggunakan Vim
Vim adalah penyunting teks yang terkenal dan terkenal. Ini setaraf baris perintah dengan penyunting teks moden. Vim dilengkapi dengan pelbagai ciri canggih seperti pemalam, makro, penyelesaian automatik, penapis, dll.
Mirip dengan nano, Vim berfungsi dengan satu fail pada satu masa. Sekiranya anda mempunyai banyak fail teks, maka menggunakan grep adalah kaedah paling optimum.
Untuk mencari dalam fail teks, pertama, buka di Vim.
$ vim
Masukkan arahan Vim berikut dan tekan "Enter".
$: /
Cari teks dalam fail menggunakan Penyunting Teks GNOME
Editor Teks GNOME adalah penyunting teks yang disertakan dengan desktop GNOME. Ini adalah penyunting teks ringkas dengan semua ciri asas yang anda harapkan. Ini adalah alternatif yang baik untuk penyunting teks baris perintah.
Sama dengan nano dan vim, berhati-hati yang sama berlaku untuk kaedah ini. Sekiranya bilangan fail teks besar, maka lebih baik anda menggunakan grep.
Buka fail teks di Penyunting Teks. Tekan "Ctrl + F" untuk memunculkan bar carian.
Cari teks dalam fail menggunakan VS Code
Visual Studio Code adalah penyunting teks yang hebat dengan banyak ciri. Ia dioptimumkan agar pengaturcara dapat digunakan seolah-olah IDE yang lengkap. Ia tersedia di hampir semua distro Linux utama.
Pasang pakej snap Visual Studio Code.
$ sudo snap install code --classic
Buka fail teks dalam VS Code. Tekan "Ctrl + F" untuk mula mencari.
Pemikiran terakhir
Terdapat banyak cara untuk mencari teks dalam fail. Ini tugas yang mudah untuk dikuasai. Sangat disarankan untuk menguasai perintah grep kerana ia menawarkan nilai paling tinggi dari segi kecekapan dan kemudahan penggunaan.
Sekiranya anda lebih suka GUI, maka terdapat banyak editor teks untuk dipilih. Mana-mana penyunting teks moden akan menyediakan pilihan carian teks.
Selamat pengkomputeran!