আমি যে উপায়টির কথা ভাবতে পারি তা হ'ল আংশিক পাথ সংরক্ষণ করার জন্য অন্যান্য পরিবেশের ভেরিয়েবলগুলি ব্যবহার করা; উদাহরণস্বরূপ, যদি আপনার কাছে থাকে
C:\this_is_a\long_path\that_appears\in_multiple_places\subdir1;
C:\this_is_a\long_path\that_appears\in_multiple_places\subdir2;
তারপরে আপনি যেমন একটি নতুন পরিবেশের পরিবর্তনশীল তৈরি করতে পারেন
SET P1=C:\this_is_a\long_path\that_appears\in_multiple_places
যার পরে আপনার আসল পথগুলি হয়ে যায়
%P1%\subdir1;
%P1%\subdir2;
সম্পাদনা: আরেকটি বিকল্প হ'ল একটি bin
ডিরেক্টরি তৈরি .bat
করা যা উপযুক্ত .exe
ফাইলগুলিকে নির্দেশ করে এমন ফাইল রাখে।
সম্পাদনা 2: অন্য উত্তরে বেন ভয়েগের মন্তব্য উল্লেখ করেছে যে প্রস্তাবিত অন্যান্য পরিবেশের ভেরিয়েবলগুলি ব্যবহারের দৈর্ঘ্য হ্রাস %PATH%
পাবে না কারণ সেগুলি সংরক্ষণের আগে প্রসারিত হবে। এটি সত্য হতে পারে এবং আমি এটির জন্য পরীক্ষা করিনি। আর একটি বিকল্প যদিও দীর্ঘ ডিরেক্টরি নামের জন্য 8dot3 ফর্ম ব্যবহার করা হয়, উদাহরণস্বরূপ C:\Program Files
সাধারণত সমতুল্য C:\PROGRA~1
। তুমি ব্যবহার করতে পারdir /x
সংক্ষিপ্ত নামগুলি দেখতে করতে পারেন।
সম্পাদনা 3: এই সাধারণ পরীক্ষাটি আমাকে বেন ভয়েগট সঠিক বলে বিশ্বাস করতে পরিচালিত করে।
set test1=hello
set test2=%test1%hello
set test1=bye
echo %test2%
এর শেষে, আপনি আউটপুট দেখতে পাবেন hellohello
চেয়েbyehello
।
সম্পাদনা 4: আপনি যদি কিছু পাথ অপসারণ করতে ব্যাচ ফাইলগুলি ব্যবহার করার সিদ্ধান্ত নেন%PATH%
আপনার ব্যাচ ফাইল থেকে আপনার এক্সিকিউটেবলের কাছে এই প্রক্রিয়াটি স্বচ্ছ হওয়ার পক্ষে কীভাবে যুক্তি দেওয়ার বিষয়ে উদ্বিগ্ন হতে পারেন (যেমন, আপনি কোনও পার্থক্য লক্ষ্য করবেন না) ব্যাচ ফাইল কল এবং এক্সিকিউটেবল কল করার মধ্যে)। ব্যাচের ফাইল লেখার পুরো অভিজ্ঞতা আমার কাছে নেই, তবে এটি ঠিক কাজ করে বলে মনে হচ্ছে।
@echo off
rem This batch file points to an executable of the same name
rem that is located in another directory. Specify the directory
rem here:
set actualdir=c:\this_is\an_example_path
rem You do not need to change anything that follows.
set actualfile=%0
set args=%1
:beginloop
if "%1" == "" goto endloop
shift
set args=%args% %1
goto beginloop
:endloop
%actualdir%\%actualfile% %args%
একটি সাধারণ নিয়ম হিসাবে, আপনার ইন্টারনেট থেকে ব্যাচ ফাইলগুলি চালনার বিষয়ে সতর্ক হওয়া উচিত, যেহেতু আপনি আপনার হার্ড ড্রাইভের ফর্ম্যাট করার মতো ব্যাচ ফাইলগুলি সহ সমস্ত ধরণের জিনিস করতে পারেন। যদি আপনি উপরের কোডটিতে বিশ্বাস না করেন (যা আমি লিখেছিলাম) তবে আপনি লাইনটি প্রতিস্থাপন করে এটি পরীক্ষা করতে পারেন
%actualdir%\%actualfile% %args%
সঙ্গে
echo %actualdir%\%actualfile% %args%
আদর্শভাবে আপনার প্রতিটি লাইনের চালানোর আগে ঠিক কী কাজ করা উচিত তা আপনার জানা উচিত।