Deneyimsiz olanlar için findstr gibi bir kalıp arama aracı işe yaramaz görünebilir. Ancak sistem tarafından oluşturulan günlük dosyalarıyla veya yüzlerce satırlık metin içeren komut satırı çıktılarıyla uğraşırken findstr tam ihtiyacınız olan araçtır.
Linux işletim sistemi kullanıcıları, Grep komutunun inanılmaz kullanışlılığına zaten aşinadır ve findstr, Microsoft Windows'ta da benzer bir rolü yerine getirir. Boruları kullanarak diğer komutlar ile birleştirebilir veya birden fazla metin dosyasını ayrıştırmak için doğrudan çalıştırabilirsiniz. Birkaç örnekle findstr'in nasıl çalıştığına bakalım.
Findstr Komutunu Kullanma
Temel sözdizimi basittir – findstr
findstr SFC example1.txt
Bu komut, SFC arama dizesini içeren tüm satırları bulur ve çıktısını alır. Findstr'in varsayılan olarak büyük/küçük harfe duyarlı olduğunu, dolayısıyla SFC'den bahsedilenlerin eşleşmeyeceğini unutmayın.
Parametreler
İsteğe bağlı parametreler ekleyerek findstr'nin çalışma şeklini daha da özelleştirebilirsiniz. /B veya /I gibi anahtarlar findstr'nin davranışını değiştirerek aramaya ek koşullar getirir. Örneğin:
findstr /I SFC example1.txt
Parametre olarak /I eklemek, aramayı büyük/küçük harfe duyarsız hale getirerek, büyük harf kullanımından bağımsız olarak terimin tüm ifadelerinin eşleşmesine olanak tanır. Findstr'in tüm parametrelerinin listesini resmi Microsoft belgeleri 'de bulabilirsiniz.
İsteğe Bağlı Desenler
Findstr'i özelleştirmenin tek yolu parametreler değildir. Örneğin
findstr “SFC DISM” example1.txt
Yukarıdakiler, terimlerden herhangi birini içeren eşleşen satırları döndürecektir. Bu, farklı adlara sahip bir öğe için söz ararken bu özelliği faydalı kılar.
Normal İfadeler
Findstr birden fazla dosyada arama yapma yeteneğine sahiptir.
findstr SFC *.txt
Joker karakterin kullanılması, normal dizini geçerli dizindeki ve alt dizinlerindeki tüm metin dosyalarıyla eşleştirir. Sonuçlar aynı şekilde dosya adlarına göre ayrılır ve hangi satırın hangi dosyadan kaynaklandığını görmenize olanak tanır.
Borular
Çoğu cmd komutu gibi findstr de diğer komutların çıktısında kullanılabilir. Hedef komutun sonundan sonra bir kanal ekleyin ve findstr'yi
dir | findstr .txt
Bu, dir komutunun çıktısında bir findstr araması çalıştırır ve .txt ile biten dosya listesini döndürür. Elbette bu özel örnek pratikte işe yaramaz çünkü dir aynı türdeki dosyaları normal bir ifadeyle zaten bulabilir.
Ayrıca çıktıyı bir metin dosyasına yönlendirme gibi daha uzun bir yol izlenebilir ve ardından metin dosyasında findstr kullanılabilir, ancak aracıyı kesmek daha kolaydır.
Windows'ta Findstr Uygulamaları
Findstr'nin bariz kullanımları yalnızca söz diziminden bile kolaylıkla anlaşılabilmektedir. Belirli bir metin dizesine sahip metin dosyalarını arayabilir veya belirli bir dizenin bir dosyada bulunup bulunmadığını görebilirsiniz.
Bu, teorik olarak yararlı olsa da nadir durumlar dışında nadiren kullanılır. Google Dokümanlar gibi bulut hizmetleri çağında çoğu kişinin artık çok fazla metin dosyası yok.
Findstr'in gerçek uygulamaları biraz daha incelikli ve daha güçlü sonuçlar içeriyor. İşte daha ilginç örneklerden bazıları.
Belirli Dosya Türlerini Bulma
Dir komutu zaten normal ifadeler kullanarak dosya adlarını arama seçeneğini içerir. Ancak findstr ile, oluşturulma saati veya tarihi gibi diğer özellikleri paylaşan dosyaları arayabilirsiniz.
18:43'te bir hata oluştuğunu ve o anda oluşturulan tüm günlük dosyalarını bulmak istediğinizi varsayalım. Yalnızca dir komutunu kullanarak, sonuçları manuel olarak gözden geçirmeniz veya tüm günlük dosyalarını alıp bunları karşılaştırmanız gerekecektir. Findstr kullanıldığında bu basit bir komuta dönüşür.
dir | findstr 06:43
Belirli bir tarihte oluşturulan dosyaları bulmak veya dizinlerin listesini almak için aynı yöntemi deneyebilirsiniz.
dir | findstr DIR
Netstat ile Ağ Bilgilerini Filtreleme.
Netstat, bilgisayarınızın ağ bağlantılarıyla ilgili tüm bilgileri (çok fazla bilgi, burada findstr devreye giriyor) veren kullanışlı bir Windows komutudur.
Netstat'ın çıktısını findstr'e aktarmak, belirli özelliklere sahip bağlantıları aramanıza olanak tanır. Örneğin, kurulu tüm bağlantıların bir listesini bu şekilde alabilirsiniz.
netstat | findstr KURULDU
Bu numara, ağ sorunlarını teşhis ederken faydalıdır. Belirli bir işlem tarafından açılan tüm bağlantıları bulmak için findstr'i bir uygulama PID'siyle bile kullanabilirsiniz.
netstat -o | findstr 13120
Belirli IP Adreslerini Alma
ipconfig komutu, IP adresleri de dahil olmak üzere sistemlerin tüm ağ arayüzlerinin ayrıntılarını görüntülemenizi sağlar. Tümünü kaydırmanıza gerek kalmadan belirli bir IP adresi türünü çıkarmak için findstr komutunu kullanabilirsiniz.
ipconfig | findstr Geçici
Bu yöntemi ipconfig'ten alt ağ maskelerinden ağ geçidi adreslerine kadar her türlü bilgiyi elde edecek şekilde genişletebilirsiniz.
Komut Dosyalarını Analiz Etme
Hangi programlama dilini kodlarsanız kodlayın, komut dosyaları sonuçta yalnızca metindir. Bu, findstr'i kodun tamamını incelemeden komut dosyalarını analiz etmek ve belirli bölümleri almak için kullanabileceğiniz anlamına gelir.
Belirli bir komut dosyasında if ifadesinin nasıl kullanıldığını görmek istediğimizi varsayalım. Aşağıdaki komutu kullanabiliriz:
findstr if script.ahk
Bu sadece if ifadesini kullanan satırları görüntülemekle kalmayacak, aynı zamanda bize kullanılan ifadeleri de gösterecektir. Ayrıca satır numaralarını görüntülemek için /N parametresini de ekleyebilirsiniz; bu, komut dosyası dosyaları için çok kullanışlıdır.
findstr /N if script.ahk
Findstr Kullanmaya Değer mi?
Komut satırı arayüzünde gezinmenin ana zorluğu, gözden geçirilmesi gereken metin miktarıdır. Findstr, yararlı bilgilerin ayıklanması ve gereksiz bilgilerin filtrelenmesi için önemli bir araçtır.
Tüm terminal komutları metin tabanlı çıktı verdiğinden ilgili veriyi bulmak için findstr her zaman kullanılabilir. ağ sorunlarını giderme 'ten doğru dosyaları bulmaya kadar her eylem findstr ile daha verimli hale getirilir..
Diğer komutlarla olan sinerjisinin dışında bile findstr, metin dosyalarının içeriğinde gezinme yeteneği açısından faydalıdır. Makine tarafından oluşturulan günlük dosyalarında belirli hataları bulabilir veya karmaşık bir komut dosyasındaki kod bölümlerini alabilirsiniz.
Kısacası findstr, herhangi bir ileri düzey Windows kullanıcısının, özellikle de komut satırı arayüzüne aşina olmak isteyen birinin cephaneliğindeki vazgeçilmez bir araçtır.
.