IT Buzzer Blog

عنوان : استفاده از Tasklist و Taskkill
فرستنده : سعيد درويش پازوکی تاريخ : 7/8/2003
وب :www.itbuzzer.net دفعات بازديد : 4538


همراه با ويندوز XP ابزارهای بسیاری ارائه شده که شاید از دید يک کاربر عادی پنهان باشند ولی مدیران سيستم بدلیل درگیر بودن با مشکلات و تنگناهای سیستمی وجود اين ابزارها را قدر میدانند و بعنوان يک ابزار کمکی حلال بسیار از مشکلات در شرايط سخت و مشکلساز از آنها نهایت استفاده را میبرند.
این مجموعه ابزارها در دو قالب محيط گرافیکی و فرامین خط فرمان داس ارائه شده اند که هرکدام کارکرد خود را دارند.
در میان مجموعه فرامین خط فرمان ميتوان به Tasklist و Taskkill اشاره کرد که در واقع همان اطلاعاتی را به شما ارائه میدهند که برگه Processes در برنامه Task Manager ارائه ميدهد با اين تفاوت که قابليت کنترل بیشتری دارد، قابليت ارائه اطلاعات بصورت فيلتر شده را دارد، آمار ريز تر و دقیق تری ارائه میدهد و از همه مهمتر اين امکان را ميدهد که علاوه بر اطلاعات کامپيوتر محلی، اطلاعات يک ايستگاه و يا سرور در شبکه را نيز نمايش دهد.
مانند بسياری ديگر از فرامين اين دستورات نيز دارای پارامترهايی هستند که ميتوان با قرار دادن ?/ در انتهای هر دستور فهرست کاملی از آنها به همراه توضيحی مختصر همراه چندین مثال دريافت کرد.
استفاده از دستور Tasklist به تنهايی همان اطلاعاتی را نمايش ميدهد که شما ميتوانيد در برگه Processes در برنامه Task Manager مشاهده نماييد:


اولين پارامتر و جالب ترين آن s system/ ميباشد که system نام سيستم مورد نظر شما ميباشد. بعنوان مثال يکی از سروريسهای دهنده های شبکه ای که در آن مشغول به کار هستم سرويس دهنده ISA ميباشد که مسئول حفاظت از شبکه و به اشتراک گذاشتن يک خط اينترنت برای دسترسی کليه ايستگاههای موجود در آن ميباشد که نام آن isasrv ميباشد. برای اينکه در پشت يک سيستم در شبکه بتوانم به فهرست پروسه های در حال اجرا بر روی آن سرويس دهنده دسترسی داشته باشم کافيست دستور tasklist /s isasrv را در خط فرمان صادر کنم تا بعد مورد سئوال قرار دادن رمز عبو مدير شبکه فهرست پروسه ها را همراه با شناسه هر پروسه ارائه دهد:

به آخرين پروسه با عنوان logon.scr و شناسه 888 دقت کنيد تا بعداً در موردش صحبت کنم.
دومين پارامتر سودمند svc/ ميباشد که وظيفه آن نمایش سرويسهای مرتبط با هر پروسه ميباشد:

پارامتر بعدی m/ ميباشد که امکان نمايش کليه ماجولهای Dll مرتبط با هر پروسه و يا نمايش پروسه هايی که از يک ماجول خاص استفاده ميکنند فراهم مياورد. چنانچه از اين دستور بصورت tasklist /m  استفاده شود کليه پروسه های به همراه ماجولهای مرتبط نمايش داده ميشوند ولی دستور:
Tasklist /s isasrv /m kernel32.dll باعث نمايش کليه پروسه هايی ميشود که از Kernel32.dll استفاده ميکنند و بر روی سرويس دهنده isasrv قرار دارند.

شکل بالا خروجی tasklist /m را بر روی کامپيوتر شخصی خودم نمايش ميدهد که ميتوانيد در قسمتی از آن کليه ماجولهای مرتبط با برنامه Outlook که در هنگام اجرای دستور باز بوده را مشاهده نماييد همچنين کليه ماجولهای مرتبط با برنامه MSN Messenger که در System Tray قرار دارد.
دستور Tasklist دارای پارامترهای ديگری نيز ميباشد که شما ميتوانيد بر حسب موقعيت و نياز از آنها استفاده کنيد و فقط کافيست ?/ Tasklist را در خط فرمان اجرا کنيد تا به فهرست کاملی از آنها دسترسی داشته باشيد.
شما ميتوانيد با استفاده از دستور Taskkill پروسه و يا پروسه هايی که بدليلی مشکلاتی برای سيستم ايجاد کرده اند را متوقف کنيد. تعدادی از پارامترهای اين دستور در جدول زير آمده است:

سيستمی که قصد اتصال به آن را داريم مشخص ميکند S system/
سيستم را مجبور ميکند تا پروسه و يا پروسه های معين شده را حتی اگر باعث ناپايداری در سيستم گردد و يا يک پروسه مرتبط با پروسه ديگر باشد متوقف کند F/
با اين دستور مشخص ميکنيم دقيقاً کدام پروسه بايد متوقف شود

/PID process id

با اين پارامتر ميتوان بجای استفاده از شماره شناسايی پروسه(PID) از نام پروسه استفاده کرد

/IM image name

چنانچه قصد متوقف کردن پروسه ای را داشته باشيم که با چندين پروسه ديگری بصورت درختی در ارتباط باشد اين پارامتر باعث ميشود تا هم پروسه مورد نظر ما و هم کليه پروسه های مرتبط متوقف شوند

/T

در يکی از شکلهای ارائه شده در بالا شاهد يک پروسه بنام logon.scr و شماره شناسه 888 بوديم که بر روی سرويس دهنده isasrv در حال اجر بود. logon.scr درواقع يک screen saver است و خروجی ارائه شده در بالا در واقع به ما اين مطلب را ميرساند که در حال حاضر سرويس دهنده موجود در حال نمايش  يک محافظ صفحه نمايش بنام logon.scr است برای متوقف کردن نمايش اين screen saver ميتوانيم از دستور مقابل استفاده کنيم: taskkill /s isasrv /PID 888
با اجرای اين دستور فوراً نمايش screen saver بر روی سرويس دهنده isasrv متوقف ميشود.
توجه داشته باشيد که حذف کردن پروسه ها بدون دلیل بسيار خطرناک است و ممکن است موجب توقف کامل سيستم در سرويس دهی و يا ناپايداری در سرويسها گردد.



 

 

از اين فرم ميتوانيد برای ارسال اين صفحه به دوستان، آشنايان و همکارانتان استفاده کنيد

  نام شما
  پست الکترونيکی دريافت کننده
   
 
 

IT Buzzer.net Since November 2002
w w w . i t b u z z e r . n e t