Linux Grep Komutunun 10 Pratik Örneği

Linux Grep Komutunun 10 Pratik Örneği

Grep komutu, metin dosyalarındaki kalıpları bulmak için kullanılan güçlü bir dosya işleme aracı olan grep yardımcı programına erişim sağlar. Pek çok pratik kullanım durumu vardır ve kesinlikle en çok kullanılan Linux komutlarından biridir. Bu kılavuz, gerçek dünyada kullanımları olan bazı basit ama kullanışlı Linux grep komutlarını göstermektedir.



Gösteri için Örnek Dosya

Okuyucuların grep'i daha etkili bir şekilde anlamalarına yardımcı olmak için bir referans dosyası oluşturduk. Terminalinizde aşağıdaki kabuk komutunu vererek bu dosyanın bir kopyasını oluşturabilirsiniz.





uzun pil ömrüne sahip bluetooth kulaklık
cat <> test-file
This is a simple text file that contains
multiple strings as well as some telephone numbers
(555) 555-1234 (567) 666-2345
and email plus web addresses
john@doe.com
https://google.com
ftp://mywebserver.com
END

1. Dosyalarda Metin Bul

Bir dosyada metin deseni aramak için grep ve ardından desen adını çalıştırın. Ayrıca, metni içeren dosyanın adını belirtin.





grep 'email' test-file

Bu komut satırımızdaki satırı görüntüleyecektir. test dosyası kelimesini içeren e-posta . Aynı metni grep kullanarak birden fazla dosyada da arayabilirsiniz.

grep 'example' /usr/share/dict/american-english /usr/share/dict/british-english

Yukarıdaki komut, kelimenin tüm örneklerini görüntüler. örnek içinde Amerika İngilizcesi ve ingiliz ingilizcesi sözlük dosyaları.



2. Tam Eşleşen Kelimeleri Bulun

Önceki örnekte gösterilen Linux grep komutu, kısmi eşleşmeleri olan satırları da listeler. Bir kelimenin yalnızca tam olarak tekrarına ihtiyacınız varsa, aşağıda verilen komutu kullanın.

grep -w 'string' test-file

NS -içinde veya --word-regexp grep seçeneği, çıktıyı yalnızca tam eşleşmelerle sınırlar. Grep, varsayılan komutla da kullanılabilen bazı ek bayraklardan oluşur.





İlgili: Grep Adını Nasıl Aldı? Grep'in Yaratılışının Arkasındaki Tarih

3. Büyük/Küçük Harf Ayrımlarını Yoksay

Varsayılan olarak grep, kalıpları büyük/küçük harfe duyarlı bir şekilde arar. Ancak, kalıbın hangi durumda olduğunu önceden bilmiyorsanız, bunu kapatmak isteyebilirsiniz.





grep -i 'this' test-file

Kullan -ben veya --ignore-case büyük/küçük harf duyarlılığını kapatma seçeneği.

4. Model Sayısını Say

NS -C bayrak anlamına gelir saymak . Belirli bir model için bulunan eşleşmelerin sayısını görüntüler. Yöneticiler, sistemle ilgili belirli bilgileri almak için bunu kullanabilir.

boru yapabilirsin ps komutu Geçerli kullanıcıya ait işlemleri saymak için grep ile.

ps -ef | grep -c $USER

Aşağıdaki komut, sayısını görüntüler. MP3 bir dizinde bulunan dosyalar.

ls ~/Music | grep -c .mp3

5. Eşleşme İçeren Satır Numaralarını Görüntüle

Belirli bir eşleşme içeren satır numaralarını bulmak isteyebilirsiniz. Kullan -n veya --satır numarası Bunu başarmak için grep seçeneği.

cat /etc/passwd | grep -n rubaiat

Bu seçenek özellikle kaynak kodlarında hata ayıklama ve günlük dosyalarında sorun giderme için kullanışlıdır. Satırların tüm numaralarını görüntülemek için ~/.vimrc Vim metin düzenleyicisini yapılandırmak için kullanılanlar:

grep -n 'set' ~/.vimrc

6. Uzantıları Kullanarak Dosya Adlarını Bulun

Tüm listeyi almak için MP3 içinde bulunan dosyalar ~/Müzik dizin:

ls ~/Music/ | grep '.mp3'

değiştirebilirsiniz .mp3 belirli dosyaları bulmak için diğer uzantılarla. Aşağıdaki komut tüm php geçerli çalışma dizininde bulunan dosyalar.

bilgisayar sabit sürücüyü tanımıyor
ls | grep '.php'

7. Sıkıştırılmış Dosyalardaki Kalıpları Bulun

Linux grep komutu, sıkıştırılmış dosyaların içindeki kalıpları da bulabilir. kullanmanız gerekecek zgrep ancak bunu yapmak için komut. İlk olarak, sıkıştırılmış bir arşivimiz oluşturun. test dosyası yazarak:

gzip test-file

Artık, ortaya çıkan arşivde metin veya diğer desenleri arayabilirsiniz.

zgrep email test-file.gz

8. E-posta Adreslerini Bulun

Yöneticiler ayrıca Linux grep komutunu kullanarak metin dosyalarından e-posta adreslerini listeleyebilir. Aşağıdaki örnek, bunu bir normal ifade kalıbı arayarak yapar.

grep '^[a-zA-Z0-9]+@[a-zA-Z0-9]+.[a-z]{2,}' test-file

Benzer işleri yapmak için düzenli ifadeler bulabilir veya nasıl çalıştığını biliyorsanız bunları kendiniz oluşturabilirsiniz.

9. Grep Kullanarak Telefon Numaralarını Bulun

Bir metin dosyasından telefon numaralarını filtrelemek için normal grep ifadelerini kullanabilirsiniz. İhtiyacınız olan telefon numaralarının türüne uyması için desende ince ayar yapmanız gerektiğini unutmayın.

grep '(([0-9]{3})|[0-9]{3})[ -]?[0-9]{3}[ -]?[0-9]{4}' test-file

Yukarıda bahsedilen komut, on basamaklı Amerikan telefon numaralarını filtreler.

10. Kaynak Dosyalardan URL'leri Bulun

Metin dosyalarında bulunan URL'leri listelemek için grep'in gücünden yararlanabiliriz. Aşağıda verilen komut, içinde bulunan tüm URL'leri yazdırır. test dosyası .

grep -E '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file

yine kullanıyoruz -VE genişletilmiş düzenli ifadeler için seçenek. Ayrıca yumurta Bunu eklemekten kaçınmak için komut.

egrep '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file

Linux Grep Komutunda Ustalaşmak

Gerçek dünya sorunlarının üstesinden gelmek için Linux grep komutunun birkaç yararlı örneğini sunduk. Bu örnekler, metin işleme için grep'in gücünü gösterse de, grep ile süper üretken olmak istiyorsanız normal ifadelerde ustalaşmanız gerekir.

Bazen Linux kullanıcıları, bir komutla ilgili çeşitli seçenekleri hatırlayamadıkları belirli durumlarla karşılaşırlar. Umarım, Linux işletim sistemi size hemen hemen her sistem yardımcı programı için komut satırı yardımı almanın yollarını sağlar.

Paylaş Paylaş Cıvıldamak E-posta Linux'ta Komut Satırı Yardımı Almanın 7 Yolu

Komut satırından Linux komutlarını öğrenmek için gerekli tüm komutlar

Sonrakini Oku
İlgili konular
  • Linux
  • Linux
  • Linux Komutları
Yazar hakkında Rubaiat Hossain(39 Makale Yayımlandı)

Rubaiat, açık kaynak için güçlü bir tutkuya sahip bir CS mezunudur. Bir Unix ustası olmasının yanı sıra ağ güvenliği, kriptografi ve işlevsel programlama ile de ilgilenmektedir. Hevesli bir ikinci el kitap koleksiyoncusu ve klasik rock'a hiç bitmeyen bir hayranlığı var.

Rubaiat Hossain'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

devre dışı bırakılmış bir facebook hesabına mesaj gönderebilir misin
Abone olmak için buraya tıklayın