Bu aptalca bir soru olabilir, ancak belgeleri okuduktan sonra bile ".cpp" veya ".h" içeren bir dosyadaki tüm satırları nasıl bulacağımı bilmiyorum .
Bunu yapmanın bir yolu var mı?
Örneğin (çalışmıyor):
findstr /i .cpp,.h // , == OR
Bu aptalca bir soru olabilir, ancak belgeleri okuduktan sonra bile ".cpp" veya ".h" içeren bir dosyadaki tüm satırları nasıl bulacağımı bilmiyorum .
Bunu yapmanın bir yolu var mı?
Örneğin (çalışmıyor):
findstr /i .cpp,.h // , == OR
Yanıtlar:
İfadeleri (Alanla ayrılmış kelimeler) eklemeniz gerekiyorsa bunu yapabilirsiniz:
findstr /i /c:"IBSS" /c:"WDI Version" /c:"Soft Ap"
Veya bazı istenmeyen satırlar alıyorsanız, şu /v
parametreyi kullanarak da hariç tutabilirsiniz :
findstr /i /c:Hosted /c:Version /c:Driver | findstr /v /i /c:drivers /c:native
(Bunu Windows 7 ve Windows 10'da test etti)
FindStr /V /I /C:"Native" /C:"Drivers" | FindStr /I /R /C:"Hosted" /C:"Version /C:"Driver"
OR
Mantığı nasıl oluşturduğunuz, aradığınız şeye ve varsa beklenen değişikliklerinize bağlıdır.
İçinde boşluk olmayan sorguların bir listesi varsa, bunu şu şekilde yapabilirsiniz, hızlı ve kirli:
findstr "thing1 thing2 thing3 thing4 thing5"
ve eğer bunlardan herhangi biri mevcutsa, doğru olarak değerlendirilecek ve 0'dan çıkacaktır.
Aradığınız şeyin boşlukları varsa , parametre türüyle findstr
birlikte kelimenin tam anlamıyla arama dizelerini kullanmanız gerekir /c:""
. Boşluk yoksa bu tür bir parametreyi kullanmaya devam edebilirsiniz.
/C:string Uses specified string as a literal search string.
Ancak , hazır bilgi ile hızlı ve kirli birleştiremezsiniz . Örneğin, bu işe yaramaz:
findstr "thing1 thing2" /c:"thing3 thingy"
Daha önceki parametreleri değişmez parametrelere dönüştürmeniz gerekir, şöyle:
findstr /c:"thing1" /c:"thing2" /c:"thing3 thingy"
Bu nedenle, değişmez seçeneği kullanmak daha iyi bir uygulamadır çünkü dinamik komut dosyalarıyla daha iyi ölçeklenir. Ancak, boşluk olmayan statik bir sorgu kümesiyse, hızlı ve kirli yol yeterli olacaktır.
FindStr /I /R /C:"Hosted" /C:"Version /C:"Driver[^S]" | FindStr /v /i /c:"Native"