Grep komutu, bir metin dosyasındaki dizeleri aramak için kullanılır. İşte yararlı bulabileceğiniz on grep ö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. Birçok pratik kullanım alanına sahiptir 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.
kedi <> test dosyası
Bu, aşağıdakileri içeren basit bir metin dosyasıdır:
birden çok dizinin yanı sıra bazı telefon numaraları
(555) 555-1234 (567) 666-2345
ve e-posta artı web adresleri
[email protected]
https://google.com
ftp://mywebserver.com
SON
1. Dosyalarda Metin Bul
Bir dosyada metin kalıbı aramak için, grep komutunu ve ardından kalıp adını çalıştırın. Ayrıca metni içeren dosyanın adını da belirtin.
grep "e-posta" test dosyası
Bu komut satırı bizim test dosyası kelimeyi içeren e-posta. Aynı metni birden çok dosyada grep kullanarak da arayabilirsiniz.
grep "örnek" / usr / share / dict / amerikan-ingilizce / usr / paylaşım / dict / ingiliz-ingilizce
Yukarıdaki komut, kelimenin tüm örneklerini görüntüler misal içinde Amerika İngilizcesi ve ingiliz ingilizcesi sözlük dosyaları.
2. Tam Eşleşen Kelimeleri Bul
Önceki örnekte gösterilen Linux grep komutu, kısmi eşleşmeler içeren satırları da listeler. Yalnızca bir kelimenin tam olarak geçtiği yerlere ihtiyacınız varsa, aşağıda verilen komutu kullanın.
grep -w "string" test dosyası
-w 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.
İlişkili: Grep İsmini 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 "bu" test dosyası
Kullan -ben veya --ignore-case büyük / küçük harf duyarlılığını kapatma seçeneği.
4. Desen Sayısını Sayma
-c bayrak, Miktar. Belirli bir model için bulunan eşleşme sayısını görüntüler. Yöneticiler bunu sistem hakkında belirli bilgileri almak için kullanabilir.
Pipo yapabilirsin ps komutu grep ile mevcut kullanıcıya ait işlemleri sayın.
ps -ef | grep -c $ USER
Aşağıdaki komut, MP3 bir dizinde bulunan dosyalar.
ls ~ / Müzik | grep -c .mp3
5. Eşleşmeleri İçeren Satır Numaralarını Görüntüle
Belirli bir eşleşmeyi içeren satır numaralarını bulmak isteyebilirsiniz. Kullan -n veya --line-number bunu başarmak için grep seçeneği.
kedi / etc / passwd | grep -n rubaiat
Bu seçenek özellikle şunlar için kullanışlıdır: kaynak kodlarında hata ayıklama ve günlük dosyalarında sorun giderme. Satırların tüm numaralarını görüntülemek için ~ / .vimrc için kullanılan Vim metin düzenleyicisini yapılandırma:
grep -n "set" ~ / .vimrc
6. Uzantıları Kullanarak Dosya Adlarını Bulun
Tümünün bir listesini almak için MP3 mevcut dosyalar ~ / Müzik dizin:
ls ~ / Müzik / | grep ".mp3"
Değiştirebilirsin .mp3 belirli dosyaları bulmak için başka uzantılarla. Aşağıdaki komut, tüm php mevcut çalışma dizininde bulunan dosyalar.
ls | grep ".php"
7. Sıkıştırılmış Dosyalarda Kalıp Bul
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. Öncelikle, sıkıştırılmış bir arşiv oluşturun. test dosyası yazarak:
gzip test dosyası
Artık, elde edilen arşivin içinde metin veya diğer desenleri arayabilirsiniz.
zgrep e-posta test-file.gz
8. E-posta Adreslerini Bul
Yöneticiler ayrıca Linux grep komutunu kullanarak metin dosyalarındaki e-posta adreslerini listeleyebilirler. Aşağıdaki örnek, bir normal ifade kalıbı arayarak bunu yapar.
grep '^ [a-zA-Z0-9] \ + @ [a-zA-Z0-9] \ + \. [a-z] \ {2, \}' test dosyası
Benzer işleri yapmak için normal ifadeler bulabilir veya nasıl çalıştıklarını biliyorsanız bunları kendiniz oluşturabilirsiniz.
9. Grep Kullanarak Telefon Numaralarını Bulun
Telefon numaralarını bir metin dosyasından filtrelemek için grep normal ifadelerini kullanabilirsiniz. İhtiyacınız olan telefon numarası türlerine uyması için deseni değiştirmeniz gerekeceğini unutmayın.
grep '\ (([0-9] \ {3 \}) \ | [0-9] \ {3 \} \) [-] \? [0-9] \ {3 \} [-] \? [0-9] \ {4 \} 'test dosyası
Yukarıda bahsedilen komut, on basamaklı Amerikan telefon numaralarını filtreler.
10. Kaynak Dosyalardan URL 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 dosyası
Tekrar kullanıyoruz -E genişletilmiş normal ifadeler seçeneği. Ayrıca şunu da kullanabilirsiniz: egrep bunu eklemekten kaçınmak için komut.
egrep "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4})" testi -dosya
Linux Grep Komutu'nda Ustalaşmak
Gerçek dünyadaki sorunları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, hemen hemen her sistem yardımcı programı için komut satırı yardımı almanın yollarını sağlar.
Komut satırından Linux komutları hakkında bilgi edinmek için gerekli tüm komutlar
Sonrakini Oku
- Linux
- Linux
- Linux Komutları
Rubaiat, açık kaynak için güçlü bir tutkuya sahip bir bilgisayar bilimleri mezunudur. Unix tecrübesi olmasının yanı sıra, aynı zamanda ağ güvenliği, kriptografi ve işlevsel programlama ile de ilgileniyor. İkinci el kitapların hevesli bir koleksiyoncusu ve klasik rock'a hiç bitmeyen bir hayranlığı var.
Haber bültenimize abone ol
Teknoloji ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için haber bültenimize katılın!
Bir adım daha…!
Lütfen size az önce gönderdiğimiz e-postadaki e-posta adresinizi onaylayın.