Set Command টি Batch File তৈরিতে খুবই গুরুত্বপূর্ণ ভূমিকা পালন
করে। যদিও এটি DOS Command হিসেবে ডসে ব্যবহার করার তেমন একটা
সুবিধা নেই। কিন্তু Batch File এর ক্ষেত্রে
এটি অতীব জরুরী। এটি
দিয়ে ছোট-বড় অনেক জটিল Batch File তৈরি করা যায়। এটি বিভিন্ন কাজে
বিভিন্নভাবে ব্যবহৃত হয়ে থাকে। আমরা আজকে
এ Command টির গুরুত্বপূর্ণ দুটি ব্যবহার জানবো
যা আমাদের প্রতিনিয়ত কাজে লাগতে পারে।
Set Command Syntax:
আগেই বলেছি এ কমান্ডটি আমরা Batch File এ প্রয়োগ করবো। তাই Batch
File এ ব্যবহারের
উদ্দেশ্যে নিচের Command Syntax দুটি লিখলাম। বিস্তারিত জানতে চায়লে Help Command ব্যবহার করতে পারেন। আমাদের Command Syntax দুটিতে কোন Command
Switch নেই।
নিচে Command Syntax টা
একটু দেখি। তারপর ব্যবহার আর বিস্তারিত আলোচনা করার চেষ্টা করবো।
১. SET
variable=string
২. SET
/P variable=[prompt String]
প্রথম কমান্ডঃ প্রথম কমান্ডটি নিয়েই আমরা প্রথমে
আলোচনা করি। উচ্চ বিদ্যালয়ে পড়ার সময় আমরা বীজগণিতে যে মান নির্ণয় করেছিলাম এ
কমান্ডটি আমাদেরকে সেই কথাই মনে করিয়ে দেবে। এটি অনেকটা মান
ধরার মতই। শুরু করার আগে নিচে আমরা একটি Copy Command এর ব্যবহার দেখি।
১. Copy
%userprofile%\Desktop\KAMRUL_DATA.xls
D:\sas\
Command টিতে আমি আমার Desktop থেকে KAMRUL_DATA.xls নামের ফাইলটি d ড্রাইভের sas ফোল্ডারে নিয়ে যাবো। এখানে
Source এবং
Destination Path টি
তুলনামুলকভাবে ছোট। কিন্তু সবসময় ছোট হবে তাতো নয়। কোন সময় এর থেকে বড়ও হতে পারে।
আর এত বড় Path
নিয়ে আমরা যদি একটি Batch File তৈরি করতে চাই এবং এ পথগুলো বার বার
ব্যবহার করার দরকার হয় তাহলে আমাদের Path/Address টি ভুল হওয়ার সম্ভবানা আছে। তাছাড়া অনেক
বড় লম্বা পথ Batch File টির সৌন্দর্য্য নষ্ট করে দিতে পারে,
রিভিও’র সময় জটিলতা সৃষ্টি করতে পারে। এতে Command
Error দেখা দিতে পারে। তাই
আমরা যদি Source এবং
Destination Path
দুটি’র মান ধরি তাহলে আমাদের Batch
File টি খুব ছোট হয়ে
যাবে। নিচের Batch Command টি দেখুন।
২.
Set source=%userprofile%\Desktop
Set dest= D:\sas\
উপরে আমরা %userprofile%\Desktop
এর জন্য source এবং D:\sas\ এর জন্য dest মান ধরলাম। অর্থাৎ এর পর থেকে যখন %userprofile%\Desktop লেখার দরকার হবে তখন আমরা শুধু source লেখবো। একইভাবে D:\sas\ এর বদলে dest ব্যবহার করবো। এখানে source এবং dest কে বলা হয় Variable
আর %userprofile%\Desktop এবং D:\sas\ কে বলা হয় String। Variable হিসেবে নিজের পছন্দমত যেকোন মান ধরা
যায়। তবে Numeric Key
(1,2,3 ইত্যাদি), কোন বিশেষ চিহ্ন (@,#,%,& ইত্যাদি) ব্যবহার না করাই ভাল বা ব্যবহার করা
যাবে না। কারণ Variable হিসেবে সবগুলো চিহ্নকেই ডস চিনতে পারে
না। এতে Command Error দেখা
দিতে পারে। আরেকটি গুরুত্বপূর্ণ বিষয় হলো মূল কমান্ডে Variable টা বসানোর সময় শুরু আর শেষে %
চিহ্ন বসাতে হবে। কোন
String যদি
% চিহ্ন
দিয়ে শুরু এবং শেষ হয় তাহলে Variable এ %% বসাতে হবে। এখন Variable ব্যবহার করে আমরা আমাদের Batch
File টি পরিপূর্ণ করে
দেখি।
৩.
Set source=%userprofile%\Desktop
Set dest= D:\sas\
Copy %source%\KAMRUL_DATA.xls %dest%
উপরে দেখুন Variable (source) এর শুরু আর শেষে %
চিহ্ন বসানো হয়েছে। আমরা
১ নং কমান্ড দিয়ে যে কাজ করেছিলাম উপরের Batch File টিও একই কাজ করবে। এবার নিচের Command
টি দেখুন। এর মাধ্যমে
আমি IDM Registration এর
কাজটি করেছি। এখানে আমরা Registry Edit with DOS বা ডস দিয়ে রেজিস্ট্রি সেটিংস এর কাজও
করেছি।
৪.
উপরের Batch Command Run করার পর IDM Registration এর কাজটি হয়ে যাবে। এবার একটু জটিল
কমান্ডের দিকে যাই। নিচের কমান্ডটি দেখুন আর বুঝার চেষ্টা করুন।
৫.
আমরা For, Tokens, Delimiter এবং Write, Overwrite with Dos এর বিষয়ে পড়েছি
ইতিপূর্বে। ঐ কমান্ডগুলোর সংমিশ্রনে এখানে Set কমান্ডটি ব্যবহার করলাম। এই Batch
File টি
Desktop থেকে রান করে দেখুন। systeminfo.txt নামে Desktop এ একটি ফাইল তৈরি হবে যাতে আপনার Windows
এর Install
date, Install
time থাকবে আবার তথ্যগুলো
স্ক্রীনেও এ দেখাবে। কমান্ডটি চায়লে আমরা System info সম্পর্কে আরো তথ্য সংযুক্ত করতে পারি।
৬.
উপরের কমান্ডটিতেও For, Tokens, Delimiter এর ব্যবহার রয়েছে, রয়েছে DOS
বা ডস দিয়ে Registry
Edit সহ আরো অনেক
গুরুত্বপূর্ণ কমান্ড। কমান্ডগুলো সঠিকভাবে বুঝার জন্য Related
Post গুলো পড়তে হবে। এছাড়া Online
Search দিয়েও প্রয়োজনীয়
সহায়তা নেওয়া যায়।
দ্বিতীয় কমান্ডঃ উপরের কমান্ডটি’র সাথে এই কমান্ডের কিছুটা পার্থক্য
রয়েছে। তবে variable এর ব্যবহারটা ঠিকই আছে। এ কমান্ডটি Menu
তৈরির ক্ষেত্রে খুবই
দারুন। শিরোনামের Screenshot টি একবার দেখলেই বুঝতে পারবেন। নিচে Command
Syntax টি একটু দেখে নিই।
SET /P variable=[prompt String]
প্রথমে SET /P দিয়ে একটি variable দিতে হবে। variable টা পছন্দমত দেওয়া যাবে যা আমরা কিছুক্ষণ উপরে আলোচনা করেছি। তারপর একটি prompt String দিতে হবে। prompt String হলো একটি মেসেজ যা দিয়ে পরবর্তী কী করা
হবে সে বিষয়ে ব্যবহারকারী একটি ধারণা পাবে। এটা Menu এর সাথে সংশ্লিষ্ট রেখে নিজের ইচ্ছা মত
যেকোন কিছু লেখা যায়। এবারে নিচের কমান্ডটি রান করে দেখুন আর বুঝার চেষ্টা করুন।
উপরের Batch Command টিতে echo বা অন্যান্য কমান্ডগুলো নিয়ে আলোচনা
করার দরকার নেই আশাকরি। কারণ ঐ গুলো নিয়ে আমরা ইতিপূর্বে Batch File এর টপিকে আলোচনা করেছি। SET /P নিয়েই আলোচনা করবো। নিচে Command
টি আবার দেখুন এবং এর
ঠিক নিচের কমান্ডটি বুঝার চেষ্টটা করুন।
SET
/P variable=[prompt String]
SET /P
|
variable
|
=
|
[prompt String]
|
set /p
|
option
|
=
|
Please put your desire number from menu
above and then Enter:
|
উপরের Command Syntax টি দেখলে আশাকরি পরের Command
টি বুঝা যাবে। এবার
নিচের কমান্ডটি দেখুন।
if %option%==1 goto 1
if %option%==2 goto 2
if %option%==3 goto 3
if %option%==4 goto 4
if %option%==5 goto exit
goto error
আমরা Variable ধরেছিলাম Option এবং উপরের আলোচনায় পড়েছি Variable এর আগে পিছে % বসাতে হয়। এখানে সেটার ব্যবহার দেখতে পাচ্ছি। এখানে If == go to Command ব্যবহৃত হয়েছে যা নিয়ে ইতিপূর্বে আমরা বিস্তারিত আলোচনা করেছি।। অর্থাৎ আমাদের দেয়া Variable যেটার সাথে মিলে If == go to Command আমাদের পরবর্তী কমান্ডটি সেখানে নিয়ে যাবে। go to এর জন্য ১ থেকে ৫ পর্যন্ত String রয়েছে। আমাদের দেয়া String এর সাথে ঐ String মিলে গেলে go to Command একটি নির্দিষ্ট Destination এ নিয়ে যাবে। Destination কোথায় সেটা go to এর পর বলা আছে। Batch File এ Destination টা : (কোলন) চিহ্ন দিয়ে লিখা হয়। যেমন আমাদের Batch File টিতে Destination গুলো :1, :2, :3, :4 এবং :exit নামে আছে। Go to Command একটি নির্দিষ্ট Destination এ Batch Command কে নিয়ে যায়। পুরো Batch File টি মূলত Set আর If go to Command দিয়েই তৈরি করা হয়েছে। বাকি কমান্ডগুলো Batch File টিকে সাজানোর জন্য যা আমরা ইতিপূর্বে পড়েছি।
এভাবে
Set
Command এর
মাধ্যমে অনেক জটিল জটিল Batch File তৈরি করা যায়। Set Command মূলত জটিল কমান্ডগুলোকে সহজভাবে
ব্যবহার করার জন্য সহায়তা করে। অনেক ক্ষেত্রে Set Command কমান্ড ছাড়া একটি Batch
File তৈরি করা সম্ভব হয়
না।
0 মন্তব্য:
একটি মন্তব্য পোস্ট করুন
Comments করার জন্য Gmail এ Sign in করতে হবে।