بررسی برنامه های درحال اجرا با دستور Tasklist
دستور Tasklist به شما اجازه میدهد همه برنامه های که در حال اجرا هستند را بررسی کنید، برای استفاده از این دستور کافیست آنرا در خط فرمان ویندوز وارد کنید. برای مثال:
Tasklist
پس از وارد نمودن دستور Tasklist با جدول بلندی از برنامه های درحال اجرا مواجه خواهید شد. در ادامه برخی از بخشهای مهم این جدول را توضیح میدهم:
نام پروسس (Image Name): در این قسمت نام فایل اجرایی برنامه های در حال اجرا را مشاهده میکنید.
مشخصه پروسس (PID): در این قسمت آی دی مرتبط با هر برنامه ی در حال اجرا مشخص شده است.
حافظه مورد استفاده (Mem Usage): در این قسمت حافظه RAM مورد استفاده به کیلوبایت مشخص شده است.
همانطور که در تصویر بالا مشاهده میکنید برنامه csrss.exe با پروسس آی دی 532 حدود 5000 کیلوبایت از حافظه سیستم استفاده میکند.
این ساده ترین روش برای استفاده از دستور Tasklist بود. دستور Tasklist پارامتر های زیادی دارد، برای بررسی پارامترهای این دستور کافیست tasklist را به همراه علامت سوال وارد کنید. برای مثال:
Tasklist /?
پارامتر | توضیحات |
/S | مشخص نمودن Hostname یا IP سیستم راه دور (Remote System) |
/U | مشخص نمودن نام حساب کاربری در سیستم راه دور |
/P | مشخص نمودن رمز عبور حساب کاربری مشخص شده راه دور |
/M | فهرست گرفتن از ماژول های مشخص شده (exe,dll) اگر پارامتر به تنهای وارد شود همه ماژولهای مرتبط فهرست گرفته خواهند شد. |
/SVC | فهرست کلیه سرویس های که از Process مشخص شده میزبانی میکنند. |
/APPS | فهرست گرفتن از برنامه های App Store ویندوز به همراه PID آنها |
/V | نمایش جزئیات مرتبط با هر Process |
/FI | تعیین فیلتر برای فهرست گیری از Process های مشخص (فیلتر های قابل استفاده: Status – Image Name – PID – Session – SessionName – CPUTime – MemUsage – Username – Services – WindowsTitle – Modules) |
/FO | مشخص نمودن نوع نمایش Process ها (به صورت جدول – فهرست وار – CSV) |
/NH | نمایش داده نشدن Header در فهرست Process ها |
اجازه دهید دستور Tasklist را در چندین مثال مختلف نشان دهم تا با این دستور بیشتر آشنا شوید. مثلا برای فهرست گیری برنامه های درحال اجرا در یک سیستم راه دور (Remote System) میبایست از پارامتر های زیر در دستور Tasklist استفاده کنیم:
Tasklist /s 192.168.10.126 /u Administrator /p AdminPass
Tasklist /s Mohammad-PC /u Administrator /p AdminPass
هر دو دستور بالا به یک صورت عمل میکنند یکی با استفاده از آدرس IP پروسس های سیستم مقصد را دریافت میکند و دیگری با استفاده از نام کامپیوتر (Hostname) اینکار را انجام میدهد.
برای فهرست گرفتن از پروسس های فعال با نمایش جزئیات هر پروسس باید از دستور Tasklist به همراه پارامترهای /v و /fi استفاده کنید. (فیلتر مرتبط با پروسس های فعال: Status eq running)
Tasklist /v /fi "status eq running"
یکی از مشکلاتی که در نسخه های قدیمی ویندوز بیش از حد اتفاق میافتاد، فریز شدن برنامه ها بود که به اصطلاح به آن هنگ کردن برنامه میگفتند. در واقع برنامه در حالت Not Responding قرار میگرفت، برای فهرست گرفتن از برنامه های که در این وضعیت قرار دارند باید به صورت زیر عمل کنید:
Tasklist /fi "status eq not responding"
برای فهرست گیری از Process های ویندوز بر اساس ماژول های مورد استفاده، میتوانید از دستور Tasklist به همراه پارامترهای /fi و فیلتر modules استفاده کنید. برای مثال:
Tasklist /fi "modules eq ntdll.dll"
برای فهرست گرفتن از App store ها که در حال اجرا هستند، میتوانید از دستور tasklist به همراه پارامتر /Apps و پارامتر /fi و فیلتر status eq running استفاده کنید. برای مثال:
Tasklist /apps /fi "status eq running"
تا اینجا یاد گرفتیم با دستور Tasklist فهرست Process های ویندوز را دریافت کنیم، حال برای بستن این Process ها باید از دستور Taskkill استفاده کنیم. بستن برنامه ها با دستور Taskkill بسیار ساده میباشد کافیست دستور Taskkill را به همراه پارامتر /pid و مشخص نمودن PID برنامه مورد نظر وارد نمود. مثلا برای بستن برنامه ای که پروسس آی دی آن 64384 میباشد دستور taskkill به شکل زیر نوشته میشود:
Taskkill /pid 64384
به طور کلی روشهای متفاوتی برای بستن برنامه ها با دستور Taskkill وجود دارد، در ادامه برای یادگیری این روشها، فهرست پارامترهای کاربردی دستور Taskkill را به شما توضیح خواهم داد:
پارامتر | توضیحات |
/S | مشخص نمودن Hostname یا IP سیستم راه دور (Remote System) |
/U | مشخص نمودن نام حساب کاربری در سیستم راه دور |
/P | مشخص نمودن رمز عبور حساب کاربری مشخص شده راه دور |
/FI | تعیین فیلتر برای فهرست گیری از Process های مشخص (فیلتر های قابل استفاده: Status – Image Name – PID – Session – SessionName – CPUTime – MemUsage – Username – Services – WindowsTitle – Modules) |
/PID | مشخص کردن PID برای بستن پروسس |
/IM | مشخص نمودن نام فایل اجرایی برنامه برای بستن آن با Taskkill |
/T | بستن پروسس مشخص شده با تمام پروسس های زیر مجموع آن |
/F | بستن اجباری پروسس ها (پروسس های که با زبان خوش بسته نمیشن) |
در ادامه همراه با تی ام ال منیجر باشید تا چند مثال کاربردی از دستور taskkill را با هم بررسی کنیم، برای بستن پروسس ها با استفاده از نام فایل اجرایی آنها دستور Taskkill به شکل زیر نوشته میشود:
Taskkill /im explorer.exe
مثلا در دستور بالا مشخص شده محیط Explorer ویندوز باید متوقف شود. توجه کنید برای مشخص نمودن نام فایل اجرایی پروسس باید نام را به صورت کامل و به همراه پسوند آن وارد کنید.
برای بستن برنامه های که فریز شده اند یا در وضعیت Not Responding قرار دارند، باید دستور Taskkill را به صورت زیر وارد کنید:
Taskkill /f /fi "status eq not responding"
همانطور که متوجه شدید برای فهرست گیری از Process های در حال اجرا، باید از دستور Tasklist استفاده کنید و برای بستن این Process ها از دستور Taskkill استفاده کنید.