Skill Development

Batch Script (বা Batch File) হলো একটি সিরিজের কমান্ড যা একটি টেক্সট ফাইলে সংরক্ষিত থাকে এবং সেই ফাইল চালালে Windows অপারেটিং সিস্টেম সেই কমান্ডগুলো একটির পর একটি নির্বাহ করে। সাধারণত Windows এর Command Prompt বা CMD-তে চলমান বিভিন্ন কাজ স্বয়ংক্রিয়ভাবে সম্পন্ন করার জন্য .bat এক্সটেনশন সহ ব্যাচ স্ক্রিপ্ট লেখা হয়।


ব্যাচ স্ক্রিপ্ট (Batch Script): একটি বিস্তারিত গাইড

পরিচিতি

Batch Script হলো একটি স্ক্রিপ্টিং ভাষা, যা Windows Command Line (CMD) এ ব্যবহৃত হয়। মূলত, Windows এর DOS (Disk Operating System) এর যুগে এটি ব্যবহার করা হতো, তবে এখনো Windows সিস্টেমে .bat এবং .cmd এক্সটেনশনের ফাইল হিসেবে ব্যবহৃত হয়। Batch File (বা Batch Script) একাধিক DOS কমান্ড বা Windows Command Line কমান্ডকে একসঙ্গে সম্পন্ন করার জন্য ব্যবহৃত হয়। এটি মূলত সিস্টেম অ্যাডমিনিস্ট্রেশন, অটোমেশন, এবং পুনরাবৃত্তিমূলক কাজ সম্পন্ন করতে সাহায্য করে।

Batch Script মূলত বিন্যাস, ফাইল ম্যানিপুলেশন, ইনপুট-আউটপুট অপারেশন এবং অন্যান্য সিস্টেম কমান্ড ব্যবহার করে কাজ করে থাকে।


Batch Script এর বৈশিষ্ট্যসমূহ

  1. সহজ সিনট্যাক্স: Batch Script-এ সিনট্যাক্স খুবই সহজ এবং Command Line এর মত করে লেখা হয়। যেকোনো Windows ব্যবহারকারী সহজেই এটি ব্যবহার করতে পারেন।
  2. অটোমেশন: Batch Script এর মাধ্যমে সিস্টেমে পুনরাবৃত্তিমূলক কাজগুলো যেমন ফাইল অপারেশন, ব্যাকআপ, ইনস্টলেশন প্রক্রিয়া ইত্যাদি সহজে অটোমেট করা যায়।
  3. চেইন অফ কমান্ডস: একটি Batch Script ফাইলে একাধিক Command Line কমান্ড একসঙ্গে লাইন ধরে চালানো যায়।
  4. ইন্টারেক্টিভিটি: Batch Script এর মাধ্যমে ইউজার ইনপুট গ্রহণ এবং সেই ইনপুটের ওপর ভিত্তি করে কাজ সম্পাদন করা যায়।
  5. কন্ডিশনাল লজিক: Batch Script-এ IF-ELSE এর মতো কন্ডিশনাল স্টেটমেন্ট এবং LOOP এর মতো রিপিটেটিভ স্টেটমেন্ট ব্যবহারের সুবিধা রয়েছে।
  6. ফাইল ম্যানিপুলেশন: Batch Script-এর মাধ্যমে ফাইল কপি, মুভ, ডিলিট, রিনেম ইত্যাদি অপারেশন করা যায়।
  7. স্টার্টআপ স্ক্রিপ্ট: Batch Script-কে Windows স্টার্টআপ বা শিডিউল টাস্ক হিসেবে সেট করে অটোমেটেড কাজ করানো যায়।
  8. ত্রুটি হ্যান্ডলিং: Batch Script-এ ERRORLEVEL এবং GOTO ব্যবহার করে ত্রুটি হ্যান্ডলিং করা যায়।

Batch Script এর সিনট্যাক্স এবং উদাহরণ

Batch Script-এর কোড Command Line Commands এর সমান এবং .bat বা .cmd এক্সটেনশন দিয়ে সংরক্ষণ করতে হয়। Windows সিস্টেমে ফাইলটি ডাবল-ক্লিক করলেই তা চালানো যায়। নিচে কিছু গুরুত্বপূর্ণ Batch Script উদাহরণ এবং কৌশল দেওয়া হলো।

১. "Hello, World!" স্ক্রিপ্ট

@echo off
echo Hello, World!
pause

বিবরণ:

  • @echo off: স্ক্রিপ্ট চলাকালীন কমান্ড লাইন ইনপুট দেখায় না।
  • echo: "Hello, World!" টেক্সটটি স্ক্রিনে প্রিন্ট করে।
  • pause: স্ক্রিপ্ট চালানোর পরে স্ক্রিনে Press any key to continue... দেখিয়ে স্ক্রিপ্টটি থামে, যাতে আপনি ফলাফল দেখতে পারেন।

২. ফোল্ডার তৈরি করা

@echo off
 mkdir C:\MyNewFolder
 echo Folder created successfully.
 pause

বিবরণ:

  • mkdir: C:\MyNewFolder নামে নতুন একটি ফোল্ডার তৈরি করে।
  • সফল হলে Folder created successfully. বার্তা দেখানো হবে।

৩. ফাইল কপি করা

@echo off
 copy C:\source\file.txt C:\destination\
 echo File copied successfully.
 pause

বিবরণ:

  • copy: C:\source\file.txt ফাইলটিকে C:\destination ফোল্ডারে কপি করে।
  • সফল হলে File copied successfully. বার্তা দেখানো হবে।

৪. IF-ELSE ব্যবহার

@echo off
set /p name="Enter your name: "
if "%name%" == "Alice" (
    echo Hello, Alice!
) else (
    echo Hello, Stranger!
)
pause

বিবরণ:

  • set /p: ইউজারের কাছ থেকে ইনপুট নেয় এবং name ভেরিয়েবলে সংরক্ষণ করে।
  • if "%name%" == "Alice" চেক করে ইনপুট Alice কিনা। যদি হয়, তাহলে Hello, Alice! প্রিন্ট করবে, নইলে Hello, Stranger!

৫. Loop ব্যবহার

@echo off
for /L %%i in (1,1,5) do (
    echo Loop iteration %%i
)
pause

বিবরণ:

  • for /L %%i in (1,1,5) একটি for loop চালায়, যেখানে 1 থেকে 5 পর্যন্ত প্রতিটি সংখ্যার জন্য %%i এর মান দেখায়।
  • echo Loop iteration %%i দ্বারা প্রতিটি ইটারেশনের জন্য সংখ্যা প্রদর্শিত হবে।

৬. ইউজার ইনপুটের ওপর ভিত্তি করে ফাইল ডিলিট করা

@echo off
set /p filename="Enter file name to delete: "
if exist "%filename%" (
    del "%filename%"
    echo %filename% deleted.
) else (
    echo File does not exist.
)
pause

বিবরণ:

  • set /p filename: ইউজারের কাছ থেকে ফাইলের নাম গ্রহণ করে।
  • if exist "%filename%" চেক করে ফাইলটি আছে কিনা। ফাইল থাকলে del কমান্ড ফাইলটি ডিলিট করবে, নইলে File does not exist. মেসেজ দেখাবে।

Batch Script এর ফাংশনালিটি এবং কমান্ডস

১. @echo off এবং echo:

  • @echo off: স্ক্রিপ্ট চলাকালীন সবকিছু কমান্ড লাইন থেকে লুকিয়ে রাখে।
  • echo: টেক্সট প্রিন্ট করার জন্য ব্যবহৃত হয়।

২. set:

  • set /p var="prompt": ইউজারের কাছ থেকে ইনপুট গ্রহণ করে এবং সেটিকে ভেরিয়েবলে সংরক্ষণ করে।
  • set var=value: ভেরিয়েবলের মান নির্ধারণ করে।

৩. if-else:

  • if condition (command): একটি শর্ত চেক করে এবং যদি শর্তটি পূরণ হয় তাহলে কমান্ডটি চালায়।
  • else: শর্ত পূরণ না হলে অন্য একটি কমান্ড চালায়।

৪. for loops:

  • for /L %%i in (start,step,end) do (commands): লুপ চালানোর জন্য ব্যবহৃত হয়। শুরু, ধাপ এবং শেষ মান নির্ধারণ করে।

৫. goto এবং labels:

  • goto label_name: স্ক্রিপ্টের নির্দিষ্ট স্থানে লাফিয়ে যায়।
  • :label_name: এটি স্ক্রিপ্টে একটি লেবেল তৈরি করে, যেখানে goto কমান্ড পাঠায়।

৬. pause:

  • pause: স্ক্রিপ্টের কার্যকারিতা বন্ধ করে, ব্যবহারকারীকে কোনো কী চাপতে বলে।

৭. exit:

  • exit: স্ক্রিপ্ট বন্ধ করার জন্য ব্যবহৃত হয়।

৮. start:

  • start filename: নির্দিষ্ট ফাইল বা প্রোগ্রাম চালু করতে ব্যবহার করা হয়।

৯. rem:

  • rem: এটি comment হিসাবে ব্যবহৃত হয়, যা স্ক্রিপ্টের মধ্যে নোট যোগ করতে পারে। এটি কোনো কমান্ড কার্যকর করে না।

Batch Script এর ব্যবহার

১. সিস্টেম অ্যাডমিনিস্ট্রেশন:

Batch Script সিস্টেম অ্যাডমিনিস্ট্রেশন কাজগুলো সহজ করতে সাহায্য করে, যেমন ফাইল ব্যাকআপ, ডিরেক্টরি পরিচালনা, ফাইল সিস্টেম অপারেশন ইত্যাদি।

২. অটোমেশন:

বিভিন্ন পুনরাবৃত্তিমূলক কাজ, যেমন ফাইল কপি করা, ইনস্টলেশন প্রক্রিয়া, সিস্টেম মেইনটেনেন্স ইত্যাদি অটোমেট করতে Batch Script ব্যবহার করা যায়।

৩. টাস্ক শিডিউলিং:

Windows এর Task Scheduler ব্যবহার করে নির্দিষ্ট সময়ে কোনো Batch Script চালানোর জন্য শিডিউল করা যায়। এটি সিস্টেমের নির্দিষ্ট সময়ে ফাইল ব্যাকআপ নেওয়া বা অন্যান্য সিস্টেম টাস্ক সম্পন্ন করতে ব্যবহৃত হয়।

৪. ইনস্টলেশন স্ক্রিপ্ট:

Batch Script বিভিন্ন ইনস্টলেশন প্রক্রিয়াতে সহায়ক। সফটওয়্যার ইনস্টলেশন, সেটআপ ফাইল কনফিগারেশন এবং সিস্টেম কনফিগারেশন করার জন্য এটি ব্যবহার করা যায়।


Batch Script এর সুবিধা

  1. সহজ এবং দ্রুত: Command Line এর মতো সহজ ভাষা ব্যবহারের কারণে এটি খুবই দ্রুত শিখা এবং কাজ করার জন্য উপযুক্ত।
  2. সিস্টেম অটোমেশন: সিস্টেম অ্যাডমিনিস্ট্রেশন এবং পুনরাবৃত্তিমূলক কাজগুলোর জন্য এটি কার্যকর।
  3. সিস্টেম ইন্টিগ্রেশন: Batch Script সরাসরি Windows OS এর সঙ্গে ইন্টিগ্রেটেড, তাই এটি সিস্টেম পরিচালনার জন্য উপযুক্ত।
  4. ফ্রি এবং ওপেন স্ট্যান্ডার্ড: Batch Script Windows এর একটি বিল্ট-ইন ফিচার, তাই আলাদা কোনো সফটওয়্যার বা লাইসেন্সের প্রয়োজন নেই।

Batch Script এর চ্যালেঞ্জ

  1. মাল্টিপ্ল্যাটফর্ম সমর্থন সীমিত: Batch Script শুধুমাত্র Windows OS এ চলে, তাই ক্রস-প্ল্যাটফর্ম কাজের জন্য এটি উপযুক্ত নয়।
  2. জটিলতা বৃদ্ধি: বড় এবং জটিল স্ক্রিপ্টের ক্ষেত্রে Batch Script এর সিনট্যাক্স জটিল হয়ে উঠতে পারে, যা ডিবাগ করা কঠিন।
  3. বিলম্বিত পারফরম্যান্স: বড় ফাইল অপারেশনের ক্ষেত্রে Batch Script অন্যান্য প্রোগ্রামিং ভাষার তুলনায় ধীর হতে পারে।
  4. গ্রাফিক্যাল ইউজার ইন্টারফেসের অভাব: Batch Script-এর কোনো GUI নেই, তাই নতুন ব্যবহারকারীদের জন্য এটি কম কার্যকর হতে পারে।

উপসংহার

Batch Script হলো একটি সহজ কিন্তু শক্তিশালী টুল, যা সিস্টেম অ্যাডমিনিস্ট্রেশন, অটোমেশন, এবং পুনরাবৃত্তিমূলক কাজ দ্রুত সম্পন্ন করতে সাহায্য করে। এটি কমান্ড লাইন ভিত্তিক কাজগুলিকে একত্রিত করে সহজভাবে সিস্টেম ম্যানেজমেন্ট এবং ফাইল অপারেশন সম্পন্ন করতে ব্যবহৃত হয়। যদিও এটি জটিল কাজের জন্য সীমিত, তবে ছোট এবং মাঝারি আকারের টাস্ক অটোমেশন এবং সিস্টেম পরিচালনার জন্য Batch Script অত্যন্ত কার্যকর।


সম্পদ ও আরও পড়াশোনা

বই:

  • "Windows Batch Scripting" - D. Finkelstein
  • "The Batchography" - Elias Bachaalany

অনলাইন টিউটোরিয়াল:

  • Batch Script Tutorial - GeeksforGeeks
  • Batch File Programming - Tutorials Point

ফোরাম ও কমিউনিটি:


কীওয়ার্ড: Batch Script, Windows Command Line, .bat files, Automation, System Administration, Windows Batch Programming.


মেটা বর্ণনা: এই গাইডে Batch Script এর ফিচার, সিনট্যাক্স, এবং উদাহরণ নিয়ে আলোচনা করা হয়েছে। Batch Script হলো Windows সিস্টেমে ফাইল অপারেশন এবং অটোমেশন কাজের জন্য ব্যবহৃত একটি গুরুত্বপূর্ণ টুল।

Promotion