শিরোনামের পরামর্শ অনুসারে, কোন ফাইলের কোন রেখার একটি নির্দিষ্ট স্ট্রিংয়ের সাথে মিল রয়েছে তার সন্ধান করার দ্রুততম (সঠিক) উপায় কী।
বিশেষত, আমি অনুসন্ধান করছি .cpp
এবং .h
ফাইলগুলি।
শিরোনামের পরামর্শ অনুসারে, কোন ফাইলের কোন রেখার একটি নির্দিষ্ট স্ট্রিংয়ের সাথে মিল রয়েছে তার সন্ধান করার দ্রুততম (সঠিক) উপায় কী।
বিশেষত, আমি অনুসন্ধান করছি .cpp
এবং .h
ফাইলগুলি।
উত্তর:
নোটপ্যাড ++ এ 'অনুসন্ধানে ফাইলগুলি' বিকল্প রয়েছে যা 'অনুসন্ধান' মেনুতে অবস্থিত .. এটি আপনাকে কোনও ফোল্ডারে একাধিক ফাইল অনুসন্ধান করতে দেয় (আপনি ফোল্ডারটি নির্দিষ্ট করতে পারেন) এবং প্রতিটি ফাইলের লাইন নম্বরগুলিও আপনাকে প্রদর্শন করবে । সাবফোল্ডার এবং লুকানো ফোল্ডারগুলি অনুসন্ধানে অন্তর্ভুক্ত রয়েছে কিনা তা আপনি টগল করতে পারেন এবং এটি আপনাকে \ t \ n ইত্যাদির সাহায্যে অনুসন্ধান করতে এবং আপনার প্রয়োজনে নিয়মিত প্রকাশের সাহায্যে অনুসন্ধানের অনুমতি দেবে।
নোটপ্যাড ++ হ'ল একটি উইন্ডোজ প্রোগ্রামার সম্পাদক (কোনও আইডিই নয়) এবং এটি ওপেন সোর্স।
(আমি বুঝতে পেরেছি যে আপনি সম্ভবত নোটপ্যাড ++ এর কথা শুনেছেন, তবে আমি এই বিকল্পটি এখানে কেবল একটি বিকল্প হিসাবে উল্লেখ করছি কারণ আপনি এই বিশেষ বৈশিষ্ট্য সম্পর্কে অবগত নন এবং অন্যদের জন্য যারা পরে এই থ্রেডটি জুড়েই হোঁচট খায়।
চিয়ার্স :)
ইউনিক্স সিস্টেমগুলিতে লোকেরা সম্ভবত এটি করার জন্য গ্রেপ ব্যবহার করবে, তবে উইন্ডোজ গ্রেপ ব্যবহার করবেন না কেন?
এখানে একটি পাওয়ারশেল সমাধান রয়েছে:
gci -r $SomePath -filter "*.cpp","*.h" | Select-String $FindThisString
-r
মধ্যে gci
recurse জন্য, এবং অবশ্যই ঐচ্ছিক, যেমন দুই ফাইল এক্সটেনশন ফিল্টার আছে। একটি দরকারী প্যারামিটার Select-String
হয় -list
যা শুধুমাত্র এর পরিবর্তে আপনি ফাইল প্রতি এটা প্রতিটি সংঘটন দেবার একটি ফাইলে ম্যাচের প্রথমত রিপোর্ট হবে।
সম্ভবত আপনি প্রতিটি ফাইল যেখানে তত্ক্ষণাত একটি ম্যাচ পাওয়া যায় সেখানে খুলতে চান? ঠিক আছে, উপরোক্ত নিম্নোক্ত ছোট ছোট পরিবর্তনটি আপনার ডিফল্ট ফাইল সংযুক্তিটির উপর নির্ভর করে বেশ কার্যকর:
gci -r $SomePath -filter "*.cpp","*.h" | Select-String $FindThisString -list | ii
-filter "*.cpp","*.h"
একাধিক এক্সটেনশন গ্রহণের বিষয়ে নিশ্চিত ? এটি বরং পড়তে হবে-include ("*.cpp","*.hpp")
কিছু এসডাব্লু এর স্থানীয়করণ করার সময় আমি আগের অনুবাদিত ফাইলগুলিতে একই স্ট্রিংগুলি অনুসন্ধান করতে ডকফ্যাচার ব্যবহার করি । এটি বিনামূল্যে এবং ওপেন সোর্স, তবে প্রথমে সূচি তৈরি করা দরকার। এটা চেষ্টা করুন. :-)
আপনি যদি কমান্ড লাইনে / লিনাক্স সহ খুশি হন। আমি কি উইন্ডোজের জন্য গ্রেপের একটি সংস্করণ ইনস্টল করার পরামর্শ দিচ্ছি?
সাইগউইন এটি সম্পর্কে মোটামুটি সহজ উপায় এবং আপনাকে বাশ শেল এবং একটি rxvt টার্মিনাল সহ একটি সম্পূর্ণ লিনাক্স পরিবেশ দেবে। অন্যথায় যদি আপনি কেবল সরঞ্জামগুলি চান gnuwin32 তবে তবে আপনি উইন্ডোজ সেমিডি.এক্সই প্রম্পটটির সাথে আটকে যাবেন।
মাইক্রোসফ্টের ডাউনলোড হিসাবে ইউনিক্স সরঞ্জামগুলির নিজস্ব সংস্করণ রয়েছে , তবে আমি যখন চেষ্টা করেছি তখন তারা gnu বন্দরগুলির তুলনায় বেশ ধীর বলে মনে হয়েছিল। তারা তাদের উইন্ডোজ 8 দিয়ে স্ক্র্যাপ করতে চলেছে।
আমি এইভাবে উইন্ডোজ রেজিস্ট্রিতে টেক্সট স্ট্রিংগুলি বা আমার উইন্ডোজ এক্সপি মেশিনে থাকা ফাইলগুলি অনুসন্ধান করি। ধরে নেওয়া যাক আমি সি: ড্রাইভের একটি সরল পাঠ্য ফাইলে "এন্টারপ্রাইজ" স্ট্রিংটি খুঁজতে চাই, তারপরে c: \ উইন্ডোজ \ টেম্পে সার্চ_রেসাল্ট.টেক্সট নামে একটি ফাইলটিতে আউটপুট লিখুন
একটি কমান্ড প্রম্পট খুলুন তারপরে টাইপ করুন:
সন্ধানকারী "এন্টারপ্রাইজ" সি: *। txt> সি: \ উইন্ডোজ \ টেম্প \ অনুসন্ধান_result.txt
আপনি যে স্ট্রিংটি অনুসন্ধান করেছেন সেটি কেস সংবেদনশীল। "এন্টারপ্রাইজ" এবং "এন্টারপ্রাইজ" একই স্ট্রিংটি খুঁজে পাবে না।