এটি একটি নির্বোধ প্রশ্ন হতে পারে তবে ডকুমেন্টেশন পড়ার পরেও আমি এখনও নিশ্চিত নই যে ".cpp" বা ".h" রয়েছে এমন কোনও ফাইলের সমস্ত লাইন কীভাবে সন্ধান করতে হবে ।
এটা করার কোন উপায় আছে?
উদাহরণস্বরূপ (কাজ করে না):
findstr /i .cpp,.h // , == OR
এটি একটি নির্বোধ প্রশ্ন হতে পারে তবে ডকুমেন্টেশন পড়ার পরেও আমি এখনও নিশ্চিত নই যে ".cpp" বা ".h" রয়েছে এমন কোনও ফাইলের সমস্ত লাইন কীভাবে সন্ধান করতে হবে ।
এটা করার কোন উপায় আছে?
উদাহরণস্বরূপ (কাজ করে না):
findstr /i .cpp,.h // , == OR
উত্তর:
আপনার যদি বাক্যাংশ (স্পেস বিভাজিত শব্দ) অন্তর্ভুক্ত করার দরকার হয় তবে আপনি এটি করতে পারেন:
findstr /i /c:"IBSS" /c:"WDI Version" /c:"Soft Ap"
বা যদি আপনি কিছু অযাচিত সারি পেয়ে থাকেন তবে আপনি সেগুলি /v
প্যারামিটার ব্যবহার করেও বাদ দিতে পারেন :
findstr /i /c:Hosted /c:Version /c:Driver | findstr /v /i /c:drivers /c:native
(এটি উইন্ডোজ 7 এবং উইন্ডোজ 10 এ পরীক্ষিত)
FindStr /V /I /C:"Native" /C:"Drivers" | FindStr /I /R /C:"Hosted" /C:"Version /C:"Driver"
আপনি কীভাবে OR
যুক্তি গঠন করেন তা নির্ভর করে আপনি প্রযোজ্য ক্ষেত্রে কী এবং আপনার প্রত্যাশিত ভবিষ্যতের পরিবর্তনগুলির উপর নির্ভর করে।
যদি এটি এমন কোনও প্রশ্নের তালিকা থাকে যার মধ্যে কোনও সাদা জায়গা নেই তবে আপনি দ্রুত এবং নোংরাভাবে এটি এটি করতে পারেন:
findstr "thing1 thing2 thing3 thing4 thing5"
এবং যদি এই জিনিসের কোনও উপস্থিত থাকে তবে এটি সত্যকে মূল্যায়ন করবে এবং 0 থেকে প্রস্থান করবে।
আপনি যা সন্ধান করছেন তাতে যদি সাদা স্থান থাকে তবে আপনাকে প্যারামিটারের findstr
সাথে আক্ষরিক অনুসন্ধানের স্ট্রিং ব্যবহার করতে হবে /c:""
। যদি কোনও সাদা জায়গা না থাকে তবে আপনি এই ধরণের প্যারামিটারটি ব্যবহার করতে পারেন।
/C:string Uses specified string as a literal search string.
তবে , আপনি দ্রুত ও মলিন সঙ্গে আক্ষরিক একত্রিত করতে পারবেন না । উদাহরণস্বরূপ, এটি কাজ করবে না:
findstr "thing1 thing2" /c:"thing3 thingy"
আপনাকে পূর্বের পরামিতিগুলিকে আক্ষরিক পরামিতিগুলিতে রূপান্তর করতে হবে, এরকম:
findstr /c:"thing1" /c:"thing2" /c:"thing3 thingy"
এর কারণে, আক্ষরিক বিকল্পটি ব্যবহার করা আরও ভাল অনুশীলন কারণ এটি গতিশীল স্ক্রিপ্টগুলির সাথে আরও ভাল স্কেল করবে। তবে যদি এটি কেবল কোনও স্থায়ী ক্যোয়ারির সেট থাকে যেখানে কোনও সাদা জায়গা নেই, দ্রুত এবং নোংরা উপায়টি যথেষ্ট।
FindStr /I /R /C:"Hosted" /C:"Version /C:"Driver[^S]" | FindStr /v /i /c:"Native"