Batch Script-এ loop ব্যবহার করে আপনি ফাইল এবং ডিরেক্টরি গুলোর উপর একাধিক অপারেশন চালাতে পারেন। যখন আপনি একটি ডিরেক্টরির সমস্ত ফাইলের সাথে কাজ করতে চান, অথবা বিভিন্ন ফাইলের উপর কোনো নির্দিষ্ট কাজ করতে চান, তখন for লুপটি খুবই কার্যকরী। এটি আপনাকে স্বয়ংক্রিয়ভাবে একাধিক ফাইল বা ডিরেক্টরি প্রসেস করতে সাহায্য করে।
for Loop এর ব্যবহার
for লুপের মাধ্যমে আপনি একটি নির্দিষ্ট ডিরেক্টরির সমস্ত ফাইল বা সাব-ডিরেক্টরি সম্পর্কে তথ্য পেতে পারেন এবং তাদের উপর অপারেশন করতে পারেন। এখানে কয়েকটি সাধারণ উদাহরণ দেওয়া হলো:
ফাইলের মধ্যে লুপ চালানো
for লুপ ব্যবহার করে একটি ডিরেক্টরির মধ্যে থাকা সব ফাইলের উপর কাজ করতে পারেন।
উদাহরণ ১: ডিরেক্টরির সব ফাইলের নাম দেখানো
@echo off
for %%F in (C:\path\to\folder\*) do (
echo %%F
)
pause
এখানে %%F হলো প্রতিটি ফাইলের রেফারেন্স যা লুপের মধ্যে প্রতিটি ফাইলের জন্য এক এক করে ইটারেট হবে। আপনি এখানে যেকোনো ডিরেক্টরির পাথ (যেমন C:\path\to\folder\) নির্দিষ্ট করতে পারেন।
উদাহরণ ২: একটি নির্দিষ্ট এক্সটেনশনের ফাইলের উপর কাজ করা
এটি সব .txt ফাইলের নাম দেখানোর উদাহরণ:
@echo off
for %%F in (C:\path\to\folder\*.txt) do (
echo %%F
)
pause
এখানে *.txt দিয়ে শুধু .txt এক্সটেনশনের ফাইলগুলোকে চিহ্নিত করা হয়েছে।
উদাহরণ ৩: ফাইলের উপর কিছু কাজ করা
যেমন, আপনি প্রতিটি .txt ফাইলের সাথে কিছু কাজ করতে চান। নিচে একটি উদাহরণ দেওয়া হলো যেখানে প্রতিটি .txt ফাইলের একটি কপি তৈরি করা হচ্ছে:
@echo off
for %%F in (C:\path\to\folder\*.txt) do (
copy "%%F" "C:\path\to\destination\"
)
pause
এখানে %%F প্রতিটি .txt ফাইলের পাথকে রেফারেন্স করছে এবং copy কমান্ডের মাধ্যমে সেগুলি নতুন ডিরেক্টরিতে কপি হচ্ছে।
ডিরেক্টরির মধ্যে লুপ চালানো
for লুপের মাধ্যমে আপনি শুধু ফাইলই না, বরং ডিরেক্টরি নিয়েও কাজ করতে পারেন।
উদাহরণ ৪: ডিরেক্টরির নাম দেখানো
@echo off
for /d %%D in (C:\path\to\folder\*) do (
echo %%D
)
pause
এখানে /d স্যুইচটি ব্যবহার করে শুধুমাত্র ডিরেক্টরির নাম গুলি তালিকাভুক্ত হচ্ছে।
উদাহরণ ৫: সাব-ডিরেক্টরির মধ্যে লুপ চালানো
যদি আপনি কোনো ডিরেক্টরি এবং তার সব সাব-ডিরেক্টরির ফাইলের উপর কাজ করতে চান, তবে /r স্যুইচটি ব্যবহার করতে পারেন:
@echo off
for /r C:\path\to\folder %%F in (*.txt) do (
echo %%F
)
pause
এখানে /r স্যুইচটি ব্যবহার করা হয়েছে যাতে এটা রিকার্সিভভাবে সব সাব-ডিরেক্টরিতে গিয়ে .txt ফাইলগুলো খুঁজে বের করে এবং তাদের নাম প্রদর্শন করে।
ফাইলের নাম থেকে কিছু অংশ বের করা
আপনি যদি ফাইলের নাম থেকে কিছু অংশ বের করতে চান, তাহলে ~ ব্যবহার করতে পারেন।
উদাহরণ ৬: ফাইলের এক্সটেনশন বাদ দিয়ে নাম দেখানো
@echo off
for %%F in (C:\path\to\folder\*.txt) do (
echo %%~nF
)
pause
এখানে %%~nF শুধুমাত্র ফাইলের নাম দেখাবে, এক্সটেনশন বাদ দিয়ে।
উদাহরণ ৭: ফাইলের পাথ, নাম এবং এক্সটেনশন দেখা
@echo off
for %%F in (C:\path\to\folder\*.txt) do (
echo Full path: %%F
echo File name: %%~nxF
echo Directory: %%~dpF
)
pause
এখানে:
%%~nFফাইলের নাম দেখাবে%%~xFফাইলের এক্সটেনশন দেখাবে%%~dpFফাইলের ডিরেক্টরি পাথ দেখাবে
সারাংশ
for loop Batch Script-এ ফাইল এবং ডিরেক্টরির সাথে কাজ করার একটি অত্যন্ত কার্যকরী টুল। আপনি এটি ব্যবহার করে ডিরেক্টরি ও ফাইলগুলির উপর একাধিক অপারেশন চালাতে পারেন, যেমন ফাইল কপি করা, নাম পরিবর্তন করা, বা কোনো নির্দিষ্ট কাজ করা। এছাড়াও, আপনি রিকার্সিভভাবে সাব-ডিরেক্টরিগুলোর উপরও কাজ করতে পারেন। for লুপের মাধ্যমে ফাইলের নাম, এক্সটেনশন, পাথ, এবং অন্যান্য বৈশিষ্ট্য নিয়ে কাজ করা খুবই সহজ এবং এটি Batch Script-এর অন্যতম গুরুত্বপূর্ণ ফিচার।