সম্মানিত দর্শক আপনাকে স্বাগতম। আমাকে Facebook instagram Telegram এ পাবেন। কামরুলকক্স: Tskill, Taskkill and TaskList in MS DOS Command

Tskill, Taskkill and TaskList in MS DOS Command



Task Manager - KAMRULCOX
আমরা যারা Windows user আছি তাদের মধ্যে খুব কম সংখ্যক লোকই পাওয়া যাবে যারা Task Manager এর সাথে পরিচিত নয় বা Task Manager ব্যবহার করেন নি। প্রায় সময় আমাদেরকে দেখতে হয় কোন কোন Program Running আছে। দেখার পর অপ্রয়োজনীয় Program গুলোকে End Task/End Process এর মাধ্যমে Close করে দিই। আবার কোন প্রোগ্রাম যখন Responding বন্ধ করে দেয় বা Windows Hang করে তখনও আমরা সর্বপ্রথম Task Manager (Ctrl+Shift+Esc) এর কথাই চিন্তা করি। Task Manager খুলে Not Responding Program বা Hang করা Program টি বন্ধ করে দিই। Not Responding Program টি Terminate বা বন্ধ হওয়ার পর Windows আবার স্বাভাবিক হয়। Task Manager এর এ সমস্ত কাজগুলো MS DOS দিয়ে করার জন্য রয়েছে Tskill, Taskkill আর TaskList আজকে আমরা সেই দুটি MS DOS Command নিয়েই আলোচনা করবো।


Process Name in Task Manager:
আলোচনার শুরুতে আমাদের Process Name and Process ID সম্পর্কে একটু জেনে নেয়া দরকার। প্রতিটি Program এর একটি নির্দিষ্ট Process Name থাকে। Process Name গুলো হয়ে থাকে সবসময় Unique Name যা অন্য কোন Program এর Process Name এর সাথে মিলে না। একটি Program এর Process Name সেটা যেই Windows এই হোক তা হবে সবসময় Unique Nameযেমন MS Word এর Process Name হলো winword.exeএই নাম সব Windows এই একই রকম থাকবে সবসময়। যখন কোন Program Running থাকে তখন তার Process Name টা Task Manager এ দেখায় এবং সেখান থেকে Process End করে দিলেই Program টি Close হয়ে যায়। আবার কোন Program চালু করার জন্য Run (Windows Key +R) এ গিয়ে Process Name টা লিখে Enter চাপলে Program টি Start হয়। উদাহরণ হিসেবে Run (Windows Key +R) এ গিয়ে winword.exe লিখে Enter চাপুন। যদিও আমরা সেভাবে কোন Program চালু করি না। শিরোনামের স্ক্রীনশটে Internet Explorer এর Process Name (iexplore.exe) টা দেখুন। Process Name গুলো সাধারণত exe Extension এর হয়। Post এর শেষে কিছু গুরুত্বপূর্ণ Program এর Process Name List  দেয়া হলো।

Process ID in Task Manager: আবার প্রতিটি Process Name এর জন্য আলাদা আলাদা Process ID বা PID আছে। PID গুলো Unique হয়  না। যখন কোন Process Run হয় তখন একটি PID নিয়ে Run হয় এবং পরবর্তীতে আবার Run করা হলে সেই PID টা পরিবর্তিত হয়ে যায়। যদিও একই Program, একই Process Nameকিন্তু প্রতিবারই কোন Process Name এর জন্য ভিন্ন ভিন্ন PID থাকে। তবে একই সময়ে একটি PID একাধিক Process Name এর জন্য থাকে না। যেমন মনে করুন আমি MS Word রান করলাম যার Process Name হলো winword.exe এবং PID=4100এখন Task Manager এ দেখুন ঐ 4100 PID আর কোন Process Name এর নেই। একই ভাবে MS Word Close করে আবার চালু করুন। দেখবেন ঐ 4100 PID আর winword.exe এর জন্য থাকবে না বরং নতুন আরেকটি PID থাকবে । Task ManagerPID দেখতে না পেলে Task Manager-> View -> Select Columns এ গিয়ে PID তে টিক মার্ক দিন। তাহলে Task ManagerPID এর Columns চলে আসবে। 

আর আপনি Task Manager এ তখন কোন Process এর PID দেখতে পাবেন। MS DOS Command এর মাধ্যমেও আপনি কোন Process এর PID দেখতে পারেন। যেমন নিচের কমান্ডটি প্রয়োগ করে দেখুন। Winword.exe এর জায়গায় শুধু আপনার প্রয়োজনীয় Process Name দিবেন।

tasklist /v /fo csv | findstr /i "Winword.exe"


Tskill, Taskkill and TaskList:
Tskill আর Taskkill দুটি কমান্ডই মূলত কোন Running Program বা Running Service Close করার উদ্দেশ্যে ব্যবহৃত হয়। Tskill হলো Process Close করার পুরাতন টুল যেখানে Taskkill অনেক সুবিধাসম্পন্ন আধুনিকই বলা যায়। দুটি কমান্ডের ব্যবহার আর Command Switch এর মধ্যে খুব মিলও রয়েছে বলা যায়। অপরদিকে TaskList দিয়ে Running Program, Service গুলোর তালিকা দেখা যায় যা Task Manager এ আমরা দেখতে পাই। নিচে বিষয়গুলো নিয়ে আলাদা আলাদাভাবে আলোচনা করা যাক।

Tskill:
এটি কোন Running Program, Service Close করার উদ্দেশ্যে ব্যবহৃত হয় সেটা কিছুক্ষণ আগেই বলেছি। এটি মূলত কোন Process End করার জন্য MS DOS এর একটি Older Version ই বলা যায়। Command Switch  এর সংখ্যা বলতে গেলে অল্পই আছে যা দিয়ে Process End করার কাজটি করতে হয়। তবে Server এর ক্ষেত্রে এটি বেশি ব্যবহৃত হতে পারে। কারণ কোন Server এর নির্দিষ্ট Process Close করার জন্য এর রয়েছে আলাদা Command Switch যা খুবই কার্যকর। Taskkill থেকে কম সুবিধা থাকলেও এর ব্যবহার খুবই সহজ। 

নিচে আমরা Help Command এর মাধ্যমে এর Command Syntax আর Switch গুলো দেখি। তারপর এগুলোর ব্যবহার দেখবো।

Tskill Command Switch:

/Server:servername
Server এর কোন Process Close করতে চায়লে এ সুইচটি ব্যবহার করতে হয়। Server  এর নাম এবং তারপর PID বা  Process Name লিখতে হবে।
/Id:sessionid
এটি Server এর ক্ষেত্রে ব্যবহৃত হয়। নির্দিষ্ট কোন session এর অধীনে Running Process বন্ধ করার জন্য ব্যবহৃত হয়।
/A
Server এর সব ধরনের Sessions থেকে Running Process বন্ধ করার জন্য ব্যবহৃত হয়।
/V
TSKILL Command প্রয়োগের পর ফলাফল দেখার জন্য।

উপরের Command Switch গুলোর মধ্যে আমাদের জন্য গুরুত্বপূর্ণ কোন সুইচ নেই বললেই চলে। তবে /v Switch টা ব্যবহার করা যায়। এবার আমরা এর ব্যবহার দেখি। এর ব্যবহার খুবই সহজ। শুধু TSKILL এর পর Process ID বা Process Name লিখে Enter চাপলেই হয়ে যায়।

Command Syntax:  TSKILL processid | processname [/SERVER:servername] [/ID:sessionid | /A] [/V]

১.    TSKILL notepad
২.    TSKILL 3936
৩.    TSKILL notepad  /v


Tskill Command Process Name লেখার সময় Extension লেখা হয় না উপরের প্রতিটি কমান্ডই notepad Close করবে। শেষের কমান্ডটি notepad Close করার পাশাপাশি মেসেজও দেবে চিত্রের মত। আর হ্যাঁ, যেহেতু Process ID টা Unique নয় তাই ওটা দেয়ার আগে একবার দেখে নিতে হবে। অন্যথায় Process Close হবে না।


Taskkill:          
Tskill এর আলোচনা টা বুঝে থাকলে Taskkill না বুঝার কোন কারণ নেই। এটিও কোন Running Program, Service Close করার উদ্দেশ্যে ব্যবহৃত হয়। তবে এটি অধিক সুবিধাযুক্ত একটি Command Tool. কারণ এটি Tskill এর পরবর্তী এবং Tskill থেকে Update ভার্সন। আমার জানামতে Windows এর Home Version গুলোতে এ কমান্ডটি থাকে না বরং ওখানে Tskill দিয়ে কাজ চালাতে হয়। এটাতেও Remote PC বা Server এর কোন Process Close করার সুযোগ রয়েছে। Help Command এর মাধ্যমে নিচে কয়েকটি Command Switch দেখি। পরে এগুলো নিয়ে আলোচনা করবো।


/S
system
Remote System এর জন্য এ সুইচটি ব্যবহৃত হয়। /s switch এর পর Remote System এর নাম দিতে হয়
/U
[domain\]user
Remote System এর জন্য /s ব্যবহার করলে এ সুইচটা ব্যবহার করা যাবে। এ ক্ষেত্রে /u এর পর domain\user Name দিতে হয়
/P
[password]
/u সুইচ ব্যবহার করা হলে ঐ User এর পাসওয়ার্ড দিতে হয়। অন্যথায় password এর জন্য Prompts Massage দেবে।
/PID
processid
কোন Process Close করার জন্য /PID লেখার পর PID দিতে হয়।
/IM  
imagename
/IM এর পর যে Process Name লিখতে হয়। Image Name মানে এখানে Process Name
/T

কোন Program এর অধীনে Running Child Process বা Process Tree বন্ধ করার জন্য এ সুইচ দরকার                          
/F

কোন কোন Process Running থাকাবস্থায় বন্ধ হতে চায় না। সে ক্ষেত্রে এ সুইচটি দিতে হয়। F দিয়ে Forcefully বুঝায়।

Command Syntax: TASKKILL [/S system [/U username [/P [password]]]] { [/FI filter] [/PID processid | /IM imagename] } [/T] [/F]

উপরে TASKKILL এর Command Syntax দেখা যাচ্ছে TASKKILL এর পর সরাসরি প্রয়োজনীয় Command Switch বসাতে হবে। এক সাথে এক বা একাধিক Command Switch ব্যবহার করা যায় এবং Command Switch গুলো Case Sensitive না। আমরা Notepad বন্ধ করা জন্য নিচের কমান্ডটি দিতে পারি।

১.    TASKKILL /IM notepad.exe
২.    TASKKILL /f /IM notepad.exe
৩.    TASKKILL /f  /t /IM notepad.exe

Tskill Command Process Name লেখার সময় Extension লিখা হয় না। কিন্তু TASKKILL Command Process Name লেখার সময় exe Extension না লিখলে Error দেখা দিতে পারে উপরে এক নং কমান্ডটি Notepad Close করবে, দুই নং কমান্ডটি Notepad Close হতে না চায়লেও Forcefully Close করবে। তিন নং কমান্ডটি Notepad এর অধীনে কোন Child Process বা Process Tree থাকলে তাও Close করবে। কোন Process বা Child Process Close করার জন্য এটাই একমাত্র কার্যকর Command. Child Process বা Process Tree হলো কোন Process উপর নির্ভরশীল এক বা একাধিক Processসব Program এর অধীনে Child Process বা Process Tree থাকে না। তাই /t সুইচ ব্যবহার না করলেও চলে। কিন্তু ব্যবহার করাটাই নিরাপদ। এতে Child Process থাকলেও আর ঐ Process নিয়ে ঝামেলা থাকে না। TASKKILL এ একসঙ্গে একাধিক Process একই কমান্ডে Close করা যায় যা Tskill Command এ সম্ভব নয় যেমন নিচের কমান্ডটি দেখুন। এটি একসাথে Internet Explorer, Firefox এবং Google Chrome এর Process Close করবে।
                     
৪.    taskkill /f /t /im iexplore.exe /im firefox.exe /im chrome.exe                 

কিছু কিছু Program Process Name এর মাঝখানে White Space বা ফাঁকা থাকে। অর্থাৎ Process Name গুলো একাধিক Word দ্বারা গঠিত। সেগুলো লেখার সময় “” চিহ্ন দিয়ে লিখতে হয়। যেমন নিচের কমান্ডটি দেখুন।

৫.    taskkill /im "Foxit Reader.exe"


TaskList Command:
মূলত Task Manager (Ctrl+Shift+Esc) এর কাজটাই এ কমান্ড দিয়ে করা হয়। Task Manager যেখানে Graphical সুবিধা দেয় সেখানে এটি DOS Window দিয়ে একই সুবিধাটা দেয়। তথ্য প্রদর্শন করা ছাড়া এ কমান্ড আর কোন কাজ করে না। তবে এর বেশ কিছু গুরুত্বপূর্ণ সুবিধা রয়েছে। এর ব্যবহারটাও খুবই সহজ। শুধু TaskList লিখে Enter চাপলেই বিস্তারিত তথ্য Screen এ দেখা যায়।  
Tasklist-KamrulCox


প্রয়োজন হলে এর পর প্রয়োজনীয় Command Switch টি বসাতে হয়। নিচে আমরা Help Command এর মাধ্যমে নিচে কয়েকটি Command Switch দেখি। পরে এগুলো নিয়ে আলোচনা করবো।

TaskList /?


/S    
system
Remote System এর Running Process দেখার জন্য /S লিখে Remote System এর নাম লিখতে হয়।
/U
[domain\]user
Remote System Process দেখার জন্য /s switch ব্যবহার করার পর এই সুইচ ব্যবহার করতে হয়।
/P    
[password]      
এ সুইচটি উপরের /u সুইচের সাথে সম্পর্কিত। /u সুইচ ব্যবহার করা হলে ঐ User এর পাসওয়ার্ড দিতে হয়।
/M    
[module]
কোন একটা Process এর সাথে কোন কোন exe বা dll Running আছে তা দেখার জন্য
/SVC

এটি Host Service গুলোর তথ্য দেখায়
/APPS

Store Apps এর তথ্য দেখায়
/V                     

এ সুইচটি অতিরিক্ত তথ্য প্রদর্শন করে
/FO
format
তথ্যগুলো কিভাবে প্রদর্শিত হবে তার জন্য Format. Default হিসেবে "TABLE"  আকারেই প্রদর্শিত হয়। তবে চায়লে "LIST", "CSV" আকারেও প্রদর্শিত করা যায়।



/NH

তথ্যগুলো "TABLE" বা "CSV" Format আকারে প্রদর্শিত হওয়ার সময় Column এর Header বাদ দেয়ার জন্য এ সুইচ ব্যবহৃত হয়। এটি তেমন গুরুত্বপূর্ণ কমান্ড নয়।
/FI
filter          
Running Process গুলো কিছু criteria অনুযায়ী ভাগ করে প্রদর্শন করার জন্য এই সুইচ। নিচে filter গুলো দেখুন। এটি মূলত অভিজ্ঞদের জন্য দরকার।

Filters:


Filter Name
Valid Operators
Valid Value(s)
STATUS
eq, ne
RUNNING | SUSPENDED
NOT RESPONDING | UNKNOWN
IMAGENAME
eq, ne
Image name
PID
eq, ne, gt, lt, ge, le
PID value
SESSION
eq, ne, gt, lt, ge, le
Session number
SESSIONNAME
eq, ne
Session name
CPUTIME
eq, ne, gt, lt, ge, le
CPU time in the format
of hh:mm:ss.
hh - hours,
mm - minutes, ss – seconds
MEMUSAGE
eq, ne, gt, lt, ge, le
Memory usage in KB
USERNAME
eq, ne
User name in [domain\]user format
SERVICES
eq, ne
Service name
WINDOWTITLE
eq, ne
Window title
MODULES
eq, ne
DLL name
NOTE: Remote Machine "WINDOWTITLE" এবং "STATUS" Filter কাজ করে না
                
১.    TaskList
২.    TaskList /m
৩.    TaskList /SVC
৪.    TaskList /V
৫.    TaskList /NH
৬.    TaskList /fo list
৭.    TaskList /FI "STATUS eq running"
৮.    TaskList /FI "IMAGENAME eq notepad.exe"

উপরের Command Switch গুলোর বর্ণনা পড়ুন আর কমান্ডগুলো ট্রাই করুন। আশাকরি বুঝে যাবেন। ১নং কমান্ডটিই আমাদের কাছে সর্বাধিক প্রয়োজনীয়। এছাড়া ৪নং কমান্ডটিও কাজে আসতে পারে। বাকি কমান্ডগুলোর তেমন ব্যবহার নেই। উপরের আটটি কমান্ডের সমন্বয়ে আমি একটি Batch File তৈরি করেছি। নিচের Batch File আপনার ডেস্কটপ বা যেকোন জায়গায় রান করুন। কিছুক্ষণের মধ্যেই task.txt নামে একটি ফাইল তৈরি হবে। ওটা খুলে পড়ুন। তাহলে আশাকরি বিষয়টি আরো পরিস্কারভাবে বুঝা যাবে।

Process Name List:
নিচে নিত্য ব্যবহারের Important কয়েকটি Program এর একটা Process Name List দিলাম। এর মাধ্যমে Program গুলো Task Manager এ খুব সহজে খুঁজে পাওয়া যাবে, রান করা যাবে বা বন্ধ করা যাবে।

Program Name
Process Name
MS Word
Winword.exe
MS Excel
Excel.exe
MS Outlook
OUTLOOK.exe
MS Power Point
Powerpnt.exe
MS Paint
Mspaint.exe
Notepad
Notepad.exe
WordPad
Wordpad.exe
Command Prompt
Cmd.exe
Calculator
Calc.exe
Windows Media Player
Wmplayer.exe
Internet Explorer
Iexplore.exe
Task Manager
Taskmgr.exe
Windows Explorer
Explorer.exe
Registry Service
Regedit.exe
MS Configuration
Msconfig.exe
Microsoft Movie Maker  
Moviemk.exe
System Information
msinfo32.exe
KM Player
KMPlayer.exe
VLC Media Player
Vlc.exe
Media Player Classic
Mpc-hc.exe
Adobe Photoshop
Photoshop.exe
Adobe Illustrator
Illustrator.exe
Firefox
Firefox.exe
Google Chrome
Chrome.exe
Foxit Reader
Foxit Reader.exe
Avro Keyboard
Avro Keyboard.exe


                               
                            

0 মন্তব্য:

একটি মন্তব্য পোস্ট করুন

Comments করার জন্য Gmail এ Sign in করতে হবে।