2022-10-12 04:14:07 +01:00
|
|
|
|
# grep
|
|
|
|
|
|
2022-10-31 23:05:11 +00:00
|
|
|
|
> Düzenli ifadeler (Regex) kullanarak dosyalardaki kalıpları bul.
|
2022-10-31 09:52:35 +00:00
|
|
|
|
> Daha fazla bilgi için: <https://www.gnu.org/software/grep/manual/grep.html>.
|
2022-10-12 04:14:07 +01:00
|
|
|
|
|
2022-10-31 23:05:11 +00:00
|
|
|
|
- Bir dosya içinde kalıp ara:
|
2022-10-12 04:14:07 +01:00
|
|
|
|
|
|
|
|
|
`grep "{{aranan_kalıp}}" {{dosya/yolu}}`
|
|
|
|
|
|
|
|
|
|
- Tam bir dize ara (düzenli ifadeleri devre dışı bırakır):
|
|
|
|
|
|
|
|
|
|
`grep --fixed-strings "{{tam_dize}}" {{dosya/yolu}}`
|
|
|
|
|
|
|
|
|
|
- Bir dizindeki tüm dosyalarda bir kalıbı tekrarlı olarak ara, eşleşmelerin satır numaralarını göster, binary dosyaları göz ardı et:
|
|
|
|
|
|
|
|
|
|
`grep --recursive --line-number --binary-files={{without-match}} "{{aranan_kalıp}}" {{dosya/yolu}}`
|
|
|
|
|
|
|
|
|
|
- Büyük/küçük harfe duyarsız modda genişletilmiş düzenli ifadeleri (`?`, `+`, `{}`, `()` ve `|` destekler) kullan:
|
|
|
|
|
|
|
|
|
|
`grep --extended-regexp --ignore-case "{{aranan_kalıp}}" {{dosya/yolu}}`
|
|
|
|
|
|
|
|
|
|
- Her eşleşmenin etrafında, öncesinde veya sonrasında 3 satır içerik yazdır:
|
|
|
|
|
|
|
|
|
|
`grep --{{context|before-context|after-context}}={{3}} "{{aranan_kalıp}}" {{dosya/yolu}}`
|
|
|
|
|
|
|
|
|
|
- Renkli çıktı ile her eşleşme için dosya adını ve satır numarasını yazdır:
|
|
|
|
|
|
|
|
|
|
`grep --with-filename --line-number --color=always "{{aranan_kalıp}}" {{dosya/yolu}}`
|
|
|
|
|
|
|
|
|
|
- Bir kalıpla eşleşen satırları ara, yalnızca eşleşen metni yazdır:
|
|
|
|
|
|
|
|
|
|
`grep --only-matching "{{aranan_kalıp}}" {{dosya/yolu}}`
|
|
|
|
|
|
2023-07-02 14:12:01 +01:00
|
|
|
|
- Bir kalıpla eşleşmeyen satırlar için `stdin`'de arama yap:
|
2022-10-12 04:14:07 +01:00
|
|
|
|
|
|
|
|
|
`cat {{dosya/yolu}} | grep --invert-match "{{aranan_kalıp}}"`
|