আংশিক পরিচিত ফোল্ডার পাথের নীচে একটি ফাইল সন্ধান করুন


0

ব্যাচের ফাইলগুলিতে আমি খুব নতুন। আমি এই ফাইলটি খুঁজতে একটি স্ক্রিপ্ট লেখার চেষ্টা করছি:

<A>\Org\App\<B>\<C>\SQL Scripts\Miscellaneous\CRErrorFinder.exe

যেখানে এ যে কোনও ড্রাইভ, বি ফোল্ডারের নাম এবং সি একটি ফোল্ডারের নাম যা কোনও পরিচিত নম্বর থেকে শুরু হওয়া উচিত (উদাহরণ: 85)।

এ: সি এর উদাহরণ মূল্য:

বি এর উদাহরণ মান: টেস্ট

সি এর উদাহরণ মান: 850-0

আমি যা চেষ্টা করেছি: আমার মূল অনুসন্ধান ফোল্ডারটি পাওয়ার জন্য আমি ড্রাইভগুলি লুপ করতে পারি (সি: \ অর্গ \ অ্যাপ \ বা ডি: \ অর্গ \ অ্যাপ like) এবং তারপরে বি এবং সি এর জন্য আরও দুটি লুপ ব্যবহার করতে পারি তবে সেখানে কি আমি এখানে যা করছি তা অর্জনের জন্য ছোট্ট উপায়?


2
আমি সম্ভবত C:\>dir CRErrorFinder.exe /s /bএটির মতো কিছু করব: এটি ফাইলটি সন্ধানের পরে আপনার পুরো পথটি।
LPChip

সি এর অধীনে যদি আমার কাছে একগুচ্ছ ফাইল এবং ফোল্ডার থাকে তবে এটি খুব কার্যকর হবে না:
ভিকিবিবি

আপনি অবশ্যই প্রথমে যে কোনও একটি সাবফোল্ডারগুলিতে যেতে পারেন এবং সেখান থেকে পুনরাবৃত্তি অনুসন্ধান করতে পারেন। সুতরাং এটি হবে C:\Org\App>dir CRErrorFinder.exe /s /bতবে তথ্যের সীমিত পরিমাণের সাথে, আরও ভাল পদ্ধতি আছে কিনা তা নির্ধারণ করা সম্ভব নয়। যদি ইতিমধ্যে সেই ফাইলটিতে নেতৃত্ব দেওয়ার মতো কিছু না থাকে তবে আপনাকে এটি অনুসন্ধান করতে হবে এবং এর অর্থ লুপের সেট। দির হ'ল একটি অপ্টিমাইজড কমান্ড তাই এটি লুপে ম্যানুয়ালি লুপ সম্পাদন করার চেয়ে দ্রুত হবে।
LPChip

উত্তর:


1

প্রথম সন্ধানের পরে থামার জন্য এই চেষ্টা করুন:

@Echo off
Set "Drives=A: C:" 
For %%A in (%Drives%
  ) Do For /D in %%B ("%%~A\Org\App\*"
    ) Do for /D in %%C in ("%%~fB\85*"
      ) Do if exist "%%~fC\SQL Scripts\Miscellaneous\CRErrorFinder.exe" (
           Set "Find=%%~fC\SQL Scripts\Miscellaneous\CRErrorFinder.exe"
        goto :Found
      )
Echo nothing found
pause
goto :Eof
:Found
Echo Found file:%Find%
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.