Grep ile Maç Öncesi ve Sonrası Çizgileri Göster

Show Lines Before After Match Via Grep



Grep, Linux sistemlerinde bazı dosyalar üzerinde çalışırken, belirli bir kalıp ararken ve daha pek çok şeyde yaygın olarak kullanılmaktadır. Bu sefer, belirli bir dosyada kullanılan eşleşen anahtar kelimeden önceki ve sonraki satırları görüntülemek için grep komutunu kullanıyoruz. Bu amaçla, eğitim kılavuzumuz boyunca -A, -B ve -C bayrağını kullanacağız. Bu nedenle, daha iyi anlamak için her adımı gerçekleştirmelisiniz. Ubuntu 20.04 Linux sisteminin kurulu olduğundan emin olun.

İlk olarak, grep üzerinde çalışmaya başlamak için Linux komut satırı terminalinizi açmalısınız. Komut satırı terminali açıldıktan hemen sonra Ubuntu sisteminizin Ana dizinindesiniz. Bu nedenle, aşağıdaki ls komutunu kullanarak Linux sisteminizin ana dizinindeki tüm dosya ve klasörleri listelemeye çalışın ve hepsini alacaksınız. Görüyorsunuz, bazı metin dosyalarımız ve içinde listelenen bazı klasörlerimiz var.







ls



Örnek 01: '-A' ve '-B' kullanma

Yukarıda gösterilen metin dosyalarından bunlardan bazılarına göz atacağız ve üzerlerine grep komutunu uygulamaya çalışacağız. Önce aşağıdaki gibi popüler cat komutunu kullanarak one.txt metin dosyasını açalım:



$kedione.txt





İlk olarak, aşağıdaki gibi grep komutunu kullanarak bu metin dosyasında bazı belirli kelimelerin eşleşmelerini göreceğiz. Grep komutunu kullanarak one.txt metin dosyasında biz kelimesini arıyoruz. Çıktı, içinde biz bulunan metin dosyasından iki satır gösterir.

$kavramakbiz bir.txt



Bu örnekte, bazı metin dosyalarındaki belirli kelime eşleşmesinden önceki ve sonraki satırları göstereceğiz. Bu yüzden aynı metin dosyasını one.txt kullanarak, biz kelimesini kendisinden önceki 3 satırı aşağıdaki gibi görüntülerken eşleştiriyoruz. -B bayrağı, Önce anlamına gelir. Dosya belirli bir kelimenin satırından önce daha fazla satıra sahip olmadığı için çıktı, belirli kelime satırından önce yalnızca 2 satır gösterir. Ayrıca, içinde o belirli kelimenin bulunduğu satırları da gösterir.

$kavramak-B3biz bir.txt

Bu dosyadaki biz kelimesinin aynısını kullanarak satırdan sonra biz kelimesinin geçtiği 3 satırı gösterelim. -A bayrağı After sunar. Dosyada daha fazla satır olmadığı için çıktı yine yalnızca 2 satır gösteriyor.

$kavramak-İLE3biz bir.txt

Öyleyse, eşleştirilecek yeni bir anahtar kelime kullanalım ve bulunduğu satırdan önceki ve sonraki satırları veya satırları gösterelim. Bu yüzden eşleştirmek için kutu kelimesini kullanıyoruz. Bu durumda satır numaraları aynıdır. Eşleşen kelimeden sonraki 3 satır, grep komutu kullanılarak aşağıda görüntülenebilir.

$kavramak-İLE3tek.txt olabilir

Anahtar kelimeyi kullanarak eşleşen bir kelimenin satırlarından önce çıktının gösterildiğini görebilirsiniz. Buna karşılık, eşleşen kelimenin satırından önce sadece iki satır gösterir, çünkü ondan önce başka satır yoktur.

$kavramak-B3tek.txt olabilir

Örnek 02: '-A' ve '-B' kullanma

Ana dizinden başka bir metin dosyası olan two.txt'yi alalım ve içeriğini aşağıdaki cat komutunu kullanarak görüntüleyelim.

$kediiki.txt

grep komutunu kullanarak Two.txt dosyasından Most kelimesinden 5 satır önce görüntüleyelim. Çıktı, satır belirli bir kelimeyi içermeden önce 5 satır gösterir.

$kavramak-B5Çoğu iki.txt

Two.txt metin dosyasından Most kelimesinden sonraki 5 satırı gösteren grep komutu aşağıda verilmiştir.

$kavramak-İLE5Çoğu iki.txt

Aranacak anahtar kelimeyi değiştirelim. Bu sefer eşleştirilecek bir anahtar kelime olarak kullanacağız. Two.txt metin dosyasından word'den önceki 2 satırı görüntüleyin, aşağıdaki grep komutu kullanılarak yapılabilir. Dosyada iki kez geldiği için çıktı, anahtar sözcüğü için iki satır gösterir. Böylece çıktı 2'den fazla satır içeriyor.

$kavramak-B2iki.txt

Şimdi, iki.txt dosyasının 2 satırını, anahtar kelimesini içeren satırdan sonra aşağıdaki komut kullanılarak yapılabilir. Çıktı yine 2'den fazla satır görüntüler.

$kavramak-İLE2iki.txt

Örnek 03: '-C' Kullanımı

Başka bir bayrak, -C, eşleşen kelimeden önceki ve sonraki satırları görüntülemek için kullanılmıştır. cat komutunu kullanarak one.txt dosyasının içeriğini görüntüleyelim.

$kedione.txt

Eşleştirilecek anahtar kelime olarak toplumu seçiyoruz. Aşağıdaki grep komutu, içinde toplum kelimesini içeren satırdan 2 satır önce ve 2 satır sonra gösterecektir. Çıktı, belirli kelime satırından bir satır önce ve ondan sonra 2 satır gösterir.

$kavramak-C2toplum one.txt

Aşağıdaki cat komutunu kullanarak Two.txt dosyasının içeriğini görelim.

$kediiki.txt

Bu çizimde, eşleştirmek için anahtar kelime olarak şiirleri kullanıyoruz. Bu nedenle, bunun için aşağıdaki komutu yürütün. Çıktı, eşleşen sözcükten önce iki satır ve sonra iki satır gösterir.

$kavramak-C2şiirler iki.txt

Eşleşmek için iki.txt dosyasından bir anahtar kelime daha kullanalım. Bu sefer anahtar kelime olarak doğayı tüketiyoruz. Bu nedenle, iki.txt dosyasındaki anahtar kelime doğasına sahip bir bayrak olarak -C'yi kullanırken aşağıdaki komutu deneyin. Bu sefer çıktıda çıktıda ikiden fazla satır var. Dosya doğa kelimesini birden fazla içerdiğinden, bunun nedeni budur. Önce gelen nature anahtar kelimesi, öncesinde iki satır ve sonrasında iki satıra sahiptir. İkincisi aynı anahtar kelimeyle eşleşirken, nature'nin önünde iki satır vardır, ancak dosyanın son satırında olduğu için ondan sonra satır yoktur.

$kavramak-C2şiirler iki.txt

Çözüm

Grep komutunu kullanırken belirli kelimeden önceki ve sonraki satırları göstermede başarılıyız.