Linux sistemlerinde dosya ve içerik arama işlemleri, sistem yöneticileri ve geliştiriciler için sıkça kullanılan bir görevdir. Bu işlemler için en güçlü iki komut: find
ve grep
.
Bu rehberde, bu iki komutu birlikte ve ayrı ayrı nasıl kullanabileceğimizi öğreneceksiniz.
İçindekiler
1. find Komutu Nedir?
find
, belirtilen dizinlerde şarta göre dosya aramak için kullanılır.
Temel Kullanım:
1 | find /hedef/dizin -name "dosya.txt" |
Dosya Türüne Göre Arama:
1 2 | find /etc -type f # Sadece dosyalar find /etc -type d # Sadece dizinler |
Tarihe Göre Arama:
1 | find /var/log -mtime -7 # Son 7 günde değişmiş dosyalar |
Boyuta Göre Arama:
1 | find / -size +100M # 100 MB'tan büyük dosyalar |
Belirli Bir Komutla Eşleşen Dosyaları Silme:
1 | find /tmp -type f -name "*.log" -delete |
2. grep Komutu Nedir?
grep
, bir dosyanın içeriğinde belirli metinleri aramak için kullanılır.
Temel Kullanım:
1 | grep "anahtar kelime" dosya.txt |
Duyarsız Arama:
1 | grep -i "anahtar" dosya.txt |
Satır Numarası ile Görüntüleme:
1 | grep -n "hata" log.txt |
Tüm Dosyalarda Arama:
1 | grep -r "config" /etc |
3. find ve grep Komutlarını Birlikte Kullanmak
Belirli bir dizinde, belirli uzantıya sahip dosyaların içinde arama yapmak için birlikte kullanılabilir:
Örnek:
1 | find /var/www -name "*.php" -exec grep -H "mysqli" {} \; |
/var/www
dizininde .php
uzantılı dosyaları tarar ve içinde mysqli
geçenleri listeler.4. Daha Etkili grep Kullanımı
Renkli Gösterim:
1 | grep --color=auto "error" log.txt |
Birden Fazla Desen Arama:
1 | grep -E "error|fail|critical" log.txt |
Sadece Eşleşen Kısmı Göster:
1 | grep -o "https://[^"]\+" index.html |
Sonuç
find
ve grep
komutları, Linux’ta etkili bir şekilde arama yapmanın temel taşlarındandır. Özellikle sistem bakımı, hata tespiti ve dosya yönetimi gibi konularda bu iki komutun birlikte kullanılması zamandan tasarruf sağlar ve işlerinizi kolaylaştırır.