Egrep ve Fgrep
Egrep ve fgrep, grep komut ailesinin bir parçasıdır. Egrep ve fgrep, Linux'ta, aramayı binlerce satırda düz metin dosyalarına girmeyi kolaylaştırmak için kullanıcı komutları olarak kullanılır. Her iki komut da DOS tabanlı metin arama yardımcı programları ve belirli bir metin veya sözcükler için arama dosyaları, dizinler ve dizin ağaçlarıdır.
Grep, hem egrep hem de fgrep için temel komuttur. “Grep” “küresel düzenli ifade baskısı” anlamına gelir. Grep, kelime ve terimleri ararken normal ifade komutlarını destekler.
Egrep, grep komutunun bir uzantısı, satırlardaki bir karakter dizesini ve bir metin dosyasının içindeki birden çok deseni aramak için bir kullanıcı komutudur. Genişletilmiş grep olarak da bilinir, daha desenli argümanlardan birini arar. Egrep, belge “genişletilmiş ifade” olarak nitelendirildiğinde kullanılır. Bu komutu kullanırken, +,?,! Ve & gibi diğer karakterler ve yararlı diziler sözdizimi hatası görüntülemek yerine sonuç verecektir. Bunun nedeni, egrep komutunun bunları normal ifadenin bir parçası olarak yorumlamasıdır..
Artı işareti, soru işareti, dikey çubuk ve parantez gibi ifadeler genellikle sonuçların belirlenmesine yardımcı olan işleçler olarak kullanılır. İfade, arama teriminden veya normal ifadeden sonra yerleştirilir. Aşağıda operatörlerin işlevi açıklanmaktadır:
Düzenli ifade ve artı işareti, normal ifadenin bir veya daha fazla sonucunu verir.
Soru işaretinden önceki düzenli ifade, eşleşmelerde sıfır veya verilen arama teriminin bir eşleşmesini verir.
Birden çok normal ifadeyi veya arama terimini ayırmak için dikey çubuk kullanılır.
Parantezler, normal bir ifadeyi veya kelimeleri kapsamak ve gruplandırmak için kullanılır.
Linux'ta bu “d” komutunu kodlarken, dosyada aranacak sözcük veya terimler için “grep-e,” ?? egrep veya egrep plus olarak ifade edilir. Eklenebilecek kaç arama kelimesinin sınırı yoktur.
Bu arada, eggre egrep'in bir uzantısıdır. Linux'ta “grep-f” olarak adlandırılır ve sabit dize grep olarak da bilinir. Normal veya herhangi bir özel ifadeyi veya karakteri tanımadığı veya yorumlamadığı için grep'e benzer. Normal ifadenin genişletilmiş yeteneklerini anlamadığından, arama sırasında bu karakterleri atlar. Yalnızca eşleşen kelimeleri ve terimleri döndürür ve başka bir şey döndürmez.
Fgrep, belgeleri sabit dizelerin bir listesi olarak yorumlar. Arama işlemi diğer komutlara kıyasla çok hızlıdır çünkü Aho-Corasick dize eşleme algoritmasını kullanır.
Özet:
1. egrep ve fgrep taban grep komutundan türetilir. “Egrep” “genişletilmiş grep” anlamına gelirken, fgrep “sabit dize grep” anlamına gelir.
Bir egrep komutu, bir dosyada veya başka bir veri havuzunda birden çok desen aramak için kullanılırken, frgrep dizeleri aramak için kullanılır.
3. “egrep” terimi genellikle “grep-e” olarak ifade edilirken, “fgrep” “grep-f” olarak kodlanır.
4. egrep komutu, genişletilmiş düzenli ifadelerin kullanılmasına izin verirken, grep yalnızca kullanıcının komutta belirttiği eşleşen kelimeyi veya terimi arar. Frep normal veya genişletilmiş normal ifadeyi tanımıyor veya anlamıyor.
Diğer arama komutlarıyla karşılaştırıldığında, fgrep için arama işlemi çok hızlıdır, çünkü sadece sağlanan arama kelimesiyle ilgilidir..
6. egrep komutu genellikle daha ilerici veya spesifik bir arama araştırması sağlamak için operatörleri kullanır. Artı işareti ve soru işareti tek, normal ifadeler veya arama terimleriyle ilgilidir. Diğer yandan, dikey çubuklar ve parantezler, karşıt işlevlere sahip birden çok, düzenli ifade için kullanılır. Dikey çubuk, parantez operatörü bunları gruplarken ifadeleri ayırır.