for %%X in (myExecutable.exe) do (set FOUND=%%~$PATH:X)
if defined FOUND ...
আপনার যদি বিভিন্ন এক্সটেনশনের জন্য এটির প্রয়োজন হয় তবে কেবল পুনরাবৃত্তি করুন PATHEXT
:
set FOUND=
for %%e in (%PATHEXT%) do (
for %%X in (myExecutable%%e) do (
if not defined FOUND (
set FOUND=%%~$PATH:X
)
)
)
where
লিগ্যাসি উইন্ডোজ সংস্করণগুলিতে এটি ইতিমধ্যে বিদ্যমান থাকতে পারে তবে আমার একটিতে অ্যাক্সেস নেই তাই আমি বলতে পারি না। আমার মেশিনে নিম্নলিখিতগুলিও কাজ করে:
where myExecutable
এবং যদি এটি খুঁজে না পাওয়া যায় তবে একটি শূন্য-বহির্গমন কোড দিয়ে ফিরে আসে। কোনও ব্যাচে আপনি সম্ভবত আউটপুটটিকে পুনর্নির্দেশ করতে চান NUL
, যদিও।
মনে রেখ
ব্যাচ ( .bat
) ফাইলগুলিতে এবং কমান্ড লাইনে পার্সিং পৃথক হয় (কারণ ব্যাচ ফাইলগুলি আছে %0
- %9
), সুতরাং আপনাকে %
সেখানে দ্বিগুণ করতে হবে। কমান্ড লাইনে এটি প্রয়োজনীয় নয়, সুতরাং ভেরিয়েবলগুলির জন্য উপযুক্ত %X
।