Aracılığıyla paylaş


findstr

Dosyalarda metin desenlerini arar.

Sözdizimi

findstr [/b] [/e] [/l | /r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/p] [/f:<file>] [/c:<string>] [/g:<file>] [/d:<dirlist>] [/a:<colorattribute>] [/off[line]] <strings> [<drive>:][<path>]<filename>[ ...]

Parametreler

Parametre Açıklama
/b Bir satırın başındaysa metin deseni ile eşleşir.
/e Satırın sonundaysa metin deseni ile eşleşir.
/l Arama dizelerini tam anlamıyla işler.
/r Arama dizelerini normal ifadeler olarak işler. Bu varsayılan ayardır.
/s Geçerli dizinde ve tüm alt dizinlerde aramalar.
/ben Dizeyi ararken karakterlerin büyük/küçük harflerini yoksayar.
/x Tam olarak eşleşen satırları yazdırır.
/v Yalnızca eşleşme içermeyen satırları yazdırır.
/n Eşleşen her satırın satır numarasını yazdırır.
/m Yalnızca bir dosya eşleşme içeriyorsa dosya adını yazdırır.
/o Eşleşen her satırdan önce karakter uzaklığını yazdırır.
/p Yazdırılamayan karakterler içeren dosyaları atlar.
/kapalı[çevrimdışı] Çevrimdışı öznitelik kümesine sahip dosyaları atlamaz.
/f:<file> Belirtilen dosyadan bir dosya listesi alır.
/c:<string> Belirtilen metni değişmez değer arama dizesi olarak kullanır.
/g:<file> Belirtilen dosyadan arama dizelerini alır.
/d:<dirlist> Belirtilen dizin listesinde aramalar. Her dizin noktalı virgülle (;), örneğin dir1;dir2;dir3) ayrılmalıdır.
/bir:<colorattribute> İki onaltılık basamak içeren renk özniteliklerini belirtir. Ek bilgi için color /? yazın.
<strings> dosya adında aranacak metni belirtir. Gerekli.
[\<drive>:][<path>]<filename>[...] Aranacak konumu ve dosyayı veya dosyaları belirtir. En az bir dosya adı gereklidir.
/? Komut isteminde Yardım'i görüntüler.

Açıklamalar

  • Tüm findstr komut satırı seçenekleri, komut dizesinde dizeleri ve dosya adı önce olmalıdır.

  • Normal ifadeler, tam karakter dizeleri yerine metin desenlerini bulmak için hem değişmez karakterleri hem de meta karakterleri kullanır.

    • Değişmez değer karakteri, normal ifade söz diziminde özel bir anlamı olmayan bir karakterdir; bunun yerine, bu karakterin bir oluşumuyla eşleşir. Örneğin, harfler ve sayılar değişmez karakterlerdir.

    • Meta karakter, normal ifade söz diziminde özel anlamı (işleç veya sınırlayıcı) olan bir simgedir.

      Kabul edilen meta karakterler şunlardır:

      Meta karakter Değer
      . joker karakter - Herhangi bir karakter
      * Yinele - Önceki karakterin veya sınıfın sıfır veya daha fazla tekrarı.
      ^ Başlangıç çizgisi konumu - Satırın başlangıcı.
      $ Bitiş çizgisi konumu - Satırın sonu.
      [class] Character sınıfı - Bir kümedeki herhangi bir karakter.
      [^class] Ters sınıf - Kümede olmayan herhangi bir karakter.
      [x-y] Aralık - Belirtilen aralıktaki tüm karakterler.
      \x Escape - Meta karakter kullanımı.
      \<string Sözcük başlangıcı konumu - Sözcüğün başlangıcı.
      string\> Bitiş sözcüğü konumu - Sözcüğün sonu.

      Normal ifade söz dizimindeki özel karakterler, birlikte kullandığınızda en güçlü karakterdir. Örneğin, joker karakterin (.) birleşimini kullanın ve karakter dizelerini eşleştirmek için (*) karakteri yineleyin: .*

      b ile başlayan ve ile biten herhangi bir dizeyle eşleştirmek için aşağıdaki ifadeyi daha büyük bir ifadenin parçası olarak kullanın: b.*ing

  • Bir dosya kümesinde birden çok dize aramak için, ayrı bir satırda her arama ölçütlerini içeren bir metin dosyası oluşturmanız gerekir.

  • Bağımsız değişkene /cöneki eklenmediği sürece birden çok arama dizesini ayırmak için boşluk kullanın.

Örnekler

x.ydosyasında hello veya aramak için şunu yazın:

findstr hello there x.y

x.y dosyasında merhaba aramak için şunu yazın:

findstr /c:"hello there" x.y

proposal.txtdosyasında windows sözcüğünün tüm oluşumlarını (ilk büyük W harfiyle) bulmak için şunu yazın:

findstr Windows proposal.txt

Büyük/küçük harfe bakılmaksızın geçerli dizindeki ve Windows sözcüğünü içeren tüm alt dizinlerde arama yapmak için şunu yazın:

findstr /s /i Windows *.*

FOR ile başlayan ve önüne sıfır veya daha fazla boşluk (bilgisayar programı döngüsünde olduğu gibi) gelen satırların tüm oluşumlarını bulmak ve her oluşumun bulunduğu satır numarasını görüntülemek için şunu yazın:

findstr /b /n /r /c:^ *FOR *.bas

Bir metin dosyasında aramak istediğiniz tam dosyaları listelemek için, stringlist.txtdosyasındaki arama ölçütlerini kullanarak filelist.txtlistesinde listelenen dosyaları arayın ve ardından sonuçları sonuçlar dosyasında depolayın.outyazın:

findstr /g:stringlist.txt /f:filelist.txt > results.out

Geçerli dizinde ve tüm alt dizinlerde bilgisayar sözcüğünü içeren her dosyayı listelemek için şunu yazın:

findstr /s /i /m \<computer\> *.*

Bilgisayar sözcüğünü içeren her dosyayı ve comp ile başlayan diğer sözcükleri (örneğin, iltifat ve rekabet) listelemek için şunu yazın:

findstr /s /i /m \<comp.* *.*