Taskkill.exe: প্রক্রিয়াটি চলমান না থাকলে একটি ত্রুটি ছুঁড়বেন না


33

আমি একটি ভিজ্যুয়াল স্টুডিও পোস্ট বিল্ড ইভেন্ট চালাচ্ছি যা আইআইএস বন্ধ করে দেয় যদি এটি এখনও সংকলনের পরে চলছে:

taskkill /f /im w3wp.exe

নিম্নলিখিতটি আইআইএস চলমান থাকলে নিখুঁতভাবে কাজ করে তবে ইতিমধ্যে এটি বন্ধ হয়ে থাকলে একটি ত্রুটি ছুঁড়ে ফেলে:

Error 1 The process "w3wp.exe" not found. xxx\EXEC

যদি কোনও ম্যাচিং চলমান প্রক্রিয়াটি খুঁজে না পায় তবে সমস্যাটিকে উপেক্ষা করার জন্য টাস্ককিলকে বলার কোনও উপায় আছে কি?

উত্তর:


29

একটি কমান্ড চালানোর পরিবর্তে, একটি ছোট ব্যাচের ফাইল চালানো পরিবর্তে কাজ করবে?

tasklist /FI "IMAGENAME eq w3wp.exe" 2>NUL | find /I /N "w3wp.exe">NUL
if "%ERRORLEVEL%"=="0" taskkill /f /im w3wp.exe

22

এটির যে সমাধানটি আমি পেয়েছি তা হল চালানো

START /wait taskkill /f /im w3wp.exe

এটি START কমান্ড থেকে সাফল্য ফিরে আসে এবং TASKKILL দ্বারা নিক্ষিপ্ত যে কোনও ত্রুটি নতুন কনসোল উইন্ডোতে ফেলে দেওয়া হয়


5
এবং আপনি যদি ব্যাচ ফাইলটি চালিয়ে যাওয়ার আগে কাজগুলি হত্যার জন্য অপেক্ষা করতে চান। কেবল যুক্ত করুন:START /wait taskkill /f /im w3wp.exe
— jezternz

1
অপেক্ষা একটি খুব গুরুত্বপূর্ণ বিশদ। বিভ্রান্তি এড়াতে আমি এটিকে মূল উত্তরে সম্পাদনা করব। ধন্যবাদ @ জেজ্টার্নজ!
— ডাস্টিন গেমসটার

15

এটি খুব ভাল কাজ করে:

taskkill /IM "w3wp.exe" /F /FI "STATUS eq RUNNING"

আমি এটি কাজ করতে পারিনি - আমার টাস্ককিলের সংস্করণ "STATUS EQ RUNNING" স্বীকৃত বলে মনে হচ্ছে না। তবে, "মেমूस জিটি 2" কাজ করে।
— পলিফুন

আমি দেখতে পেয়েছি যে প্রক্রিয়াগুলি আটকে থাকতে পারে বা আটকাতে পারে না ধরার জন্য "স্ট্যাটাস এক ইউএনএনএনএনউইন" একটি ভাল বিকল্প ছিল (তবে উভয় উপায়ে আপনি এগুলি চান না)
— অ্যান্ডি ক্রাউয়েল

10

অথবা, এটি না পাওয়া মাত্র একটি তথ্য বার্তা ফেরত দেবে:

taskkill /f /im w3wp.exe /fi "memusage gt 2"

থেকে তথ্য: এখানে


3

এটি একটি লাইন সমাধান ।

এটি কেবলমাত্র প্রক্রিয়াটি চালিত হবে যদি প্রক্রিয়াটি সত্যিই চলমান থাকে অন্যথায় এটি কেবল এটি চালিত নয় যে তথ্যটি জানায়।

tasklist | find /i "w3wp.exe" && taskkill /im w3wp.exe /F || echo process "w3wp.exe" not running.

প্রক্রিয়া চলমান থাকলে এটিই আউটপুট:

w3wp.exe           1960 Services                   0    112,260 K
SUCCESS: The process "w3wp.exe" with PID 1960 has been terminated.

চলমান না হলে এটি আউটপুট:

process "w3wp.exe" not running.

0

প্রক্রিয়াটিকে হত্যা করতে বাধ্য করে (যদি প্রক্রিয়াটি চলমান থাকে), এবং কোনও তথ্য আউটপুট দেবেন না।

নিম্নলিখিত কমান্ড ঠিক আছে।

taskkill /f /im w3wp.exe /t /fi "status eq running">nul


কিভাবে এই w3wp.exe হত্যা করবে?
— জেসন অ্যালার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.