Как закрыть процесс на. Завершение процессов в Windows командой taskkill

После длительного перерыва, с чем он был связан расскажу чуть ниже, продолжаю ведение блога и сегодня решил продолжить тему по командной строке Windows. Речь пойдёт всего о двух командах, первая позволит отобразить все процессы в cmd.exe, а вторая завершить нужный процесс из cmd.exe. А не вел я блог с 24 августа по 8 сентября по одной единственной причине!

Это связанно с покупкой первой машины. Решил все-таки купить! Выбор упал на ВАЗ 2105. Сама тачка в хорошем состоянии, на ходу, но все-токи был нужен не большой косметический ремонт морды и не много с проводкой повозится пришлось…

Вот и пришлось сменить клавиатуру и мышь на гаечные ключи. А вместо привычных мне сайтов, читал только сайты посвящённые авто тематике!

В общем пост о своей машине я думаю ещё напишу. А теперь стоит вернуться к теме.

Много слов писать я не буду, так как не чего особенного в данной теме нет. Просто, коротко расскажу о двух командах «tasklist » и «taskkill » которые могут пригодится в повседневной работе за компьютером. В подробности вдаваться я не буду…

Как вывести все процессы в консоли.

Для этого дела предусмотрена команда «tasklist » запускаем cmd.exe и пишем данную команду.

Теперь список всех процессов запущенных в системе как на ладони, будет выведен в cmd.exe! Что Важно знать.

Это естественно «Имя образа » проще говоря имя процесса и так называемый PID – Это просто некое число, оно нам пригодится, когда пойдёт речь о команде «taskkill »

Имена всех запущенных процессов, мы успешно вывели в консоль, теперь посмотрим, как можно убить процесс через командную строку Windows.

Как завершить процесс через cmd.exe

Тут-то и понадобится команда «taskkill ». Пользоваться её в локальных условиях довольно просто. Посмотрим как.

У меня запущен процесс «Project1.exe» (Пустое приложение созданное в Delphi специально для этого поста)

После «/IM» пишем имя запущенного процесса, затем как обычно «Enter» и процесс будет убит.

Это был первый способ убить процесс. Рассмотрим и второй. Тут и понадобится нам тот самый «PID»

В моём случаи PID процесса «Project1.exe» такой 5764 У вас он естественно будет другой…

Формируем команду таким образом!

То есть, за место «/ im » как было в первом варианте, пишем уже «/ PID », а вместо имени процесса указываем сам номер.

Процесс также будет успешно завершён. Если Вам нужно завершить процесс принудительно, то используйте ключик «/ F ».

Теперь при необходимости можно быстро завершить процесс не используя диспетчер задач.

Пользователям персональных компьютеров приходится сталкиваться с разными проблемными ситуациями, решить которые иногда затруднительно самостоятельно. Однако, обнаружив ответ на проблемный вопрос, в следующий раз такие задачи уже не кажутся сложными. Завершить процесс, в котором уже нет необходимости, в большинстве случаев может даже новичок. К сожалению, иногда приходится сталкиваться с тем, что, какие бы попытки ни были предприняты, не завершается всё равно процесс в диспетчере задач .

Что же делать, когда какой-то процесс «взбунтовался» и не желает подчиниться, как всё-таки осуществить его завершение, можно узнать, если ознакомиться с нашими рекомендациями. Мы поделимся нехитрыми способами, поможем вам овладеть навыками управления всеми процессами, которые запущены на вашем компьютере.

Если в процессе работы на компьютере вы стали замечать, что он заметно подвисает , значит, ему тяжело выполнять все возложенные на него задачи. Это происходит, когда вы запускаете множество процессов, а потом их просто забываете остановить.

Конечно, если не увлечься открыванием новых приложений, то с проблемой зависания компьютера удастся сталкиваться реже. Ну а если вы всё-таки очень увлечённо работали, поэтому сами не заметили, как открыли много окон, запустили на выполнение несколько программных приложений и утилит, то закрыть их простым нажатием на кнопку «Выхода», может не получиться.

Алгоритм действий

Для завершения нежелательных процессов, отказывающихся подчиняться пользователю, нужно воспользоваться помощью «Диспетчера задач ». Если у вас установлен Windows 7, достаточно кликнуть правой клавишей мышки по нижней панели задач, выбрать параметр «Запустить Диспетчер задач».

Шаг 1

В открывшемся окне на первой вкладке кликните по той утилите, которая вам уже не нужна, а далее в нижней части окна выберите параметр «Снять задачу». Если процесс не совсем безнадёжен, он остановится.

Шаг 2

Можно перейти на вторую вкладку «Процессы», точно также кликнуть по той строке, которая провоцирует в конкретный момент проблемы, а затем нажать на кнопку «Завершить».

К сожалению, даже такие советы иногда для некоторых пользователей оказываются совершенно бесполезными, поскольку всё равно не закрывается процесс в Диспетчере задач.

Если и с вами случилась такая неприятность, вы отчаялись и уже поверили, что единственным выходом из такой проблемной ситуации будет применение вынужденной перезагрузки операционной системы , мы предлагаем вам не паниковать, а ознакомиться с нашими следующими рекомендациями.

Шаг 3

Итак, не произносите фраз типа: «Не могу завершить процесс в Диспетчере задач», а лучше воспользуйтесь уникальными возможностями служебной команды taskkill. Эту команду многие готовы рассматривать в качестве мощнейшего инструмента.

Чтобы запустить такую команду, сначала, конечно же, нужно открыть командную строку, зажав одновременно две клавиши: «Win» и «R». В открывшемся маленьком окошке введите «cmd».

Шаг 4

Теперь вам нужно будет набрать «taskkill» и нажать «Enter». Однако чтобы справиться с неуправляемым процессом к этому слову следует присоединить дополнительную опцию.

В частности, можно завершить процесс при помощи команды taskkill, используя имя приложения, которое отказывается завершаться. Для этого наберите небольшую командную фразу: taskkill / IM «имя приложения». Конечно, вместо словосочетания «имя приложения» вы должны набрать тот процесс, который у вас нет мочи остановить. Например, taskkill / IM excel.exe. Если вы воспользуетесь нашим примером, то в этом случае прекратит работать табличный редактор Excel. Выбирайте ваш процесс, приносящий вам ужасные хлопоты, и прописывайте в команде его имя.

В окне процессы отображаются не только с указанием своего имени, но и идентификатора в том числе. Если вы желаете, вы можете набрать такую командную фразу: taskkill / PID 574, где число 574 будет являться идентификатором проблемного процесса.

Шаг 5

Если на компьютере имеются несколько учётных записей , при этом абсолютно понятно, что зависание возникло именно по причине незавершённых процессов одного из пользователей, можно воспользоваться и такой командной фразой: «taskkill / F / FI «USERNAME eq имя_пользователя». Понятно, что в ней придётся вам самостоятельно изменить непосредственно имя пользователя, по вине которого возникла проблема.

Команда «taskkill», действительно, является мощнейшим инструментом, которому не могут противостоять даже вирусы и троянцы. Такая команда успешно завершает даже их негативную и упорную «деятельность».

Итоги

Мы уверены, что, ознакомившись с изложенными нами советами, вы сможете впоследствии твёрдо говорить своим знакомым: «Я могу без проблем останавливать работу любой программы, приложения». Овладев такими практическими навыками, вы сможете ещё сильнее «подружиться» с вашим компьютером.

В данном видео мы рассмотрим команду Taskkill , которая позволяет завершать определенные процессы из командной строки в операционной системе Windows. Но в начале, как всегда, рассмотрим, зачем это вообще может понадобиться.

На обычных рабочих станциях данная команда не особо востребована, так как можно завершить процесс через диспетчер задач. Хотя, не всегда это получается и в данной ситуации команда Taskkill пригодится, но, это скорее исключение из правил.

В основном, данная команда используется системными администраторами и лично я сталкивался со следующими ситуациями:

1) Обновление программ на терминальном сервере – при администрировании терминального сервера большое количество людей может запустить одно и тоже приложение. Но, в большинстве случаев, при обновлении программы её необходимо сначала закрыть, т.е. завершить её процесс. Если клиентов не много, то, можно воспользоваться диспетчером задач, а если их порядка 100, то это уже проблематично. А команда Taskkill позволяет убить все процессы для определенного приложения.

2) Автоматический перезапуск программы – как вы знаете не все программы работают идеально и бывает, что они подвисают. А если данная программа должна работать 24 часа в сутки и 7 дней в неделю, то приходится периодически проверять её работоспособность.

Лично я сталкивался со следующей ситуацией: есть интернет магазин, в который данные о товарах выгружаются из 1С-ки. Но, обработчик написан как-то криво, в результате чего обмен подвисает раз в сутки, а то и через каждые 2-3 часа. По этому, появилась необходимость каждый час принудительно перезапускать обработчик, не зависимо от того, подвисла программа или нет.

И так, перейдем к практике.

Запустим браузер Google Chrome и попробуем завершить его процесс (Пуск \ Стандартные \ Выполнить \ cmd \ taskkill /? - чтобы посмотреть синтаксис команды)

/s КОМПЬЮТЕР, где КОМПЬЮТЕР - это IP или адрес удаленного компьютера. По умолчанию, операция выполняется в локальной системе. Если именно это вас и интересует, данную опцию можно не использовать.

/u ДОМЕН\ПОЛЬЗОВАТЕЛЬ , где ДОМЕН - это имя домена, а ПОЛЬЗОВАТЕЛЬ - имя пользователя, для которого нужно выполнить команду. Данная опция позволяет запускать taskkill с правами определенной учетной записи или домена.

/p - обязательно используется в сочетании с опцией /u для указания пароля к учетной записи пользователя.

/fi - позволяет выполнять команду taskkill с определенными фильтрами.

/f - принудительно завершает выполнение команды.

/IM - позволяет использовать имя приложения вместо идентификатора процесса.

/T - завершение дерева процессов.

Теперь нам нужно узнать имя приложения, которое использует данный процесс. Это можно сделать через диспетчер задач (Ctrl + Alt + Del \ Запустить диспетчер задач \ Процессы \ chrome . exe ).

Если у вас нет возможности запустить диспетчер задач, допустим, вы подключились к компьютеру удаленно через командную строку, то можно воспользоваться командой tasklist , она так же отображает все процессы.

Taskkill / f / im chrome . exe – принудительно завершить приложение с именем chrome.exe

Chrome завершил работу, но появились ошибки «Не удалось завершить процесс, ни один из экземпляров задания не запущен». Данное сообщение появляется из-за того, что эти процессы были связанными и когда завершил работу основной, остальные автоматически завершились.

Теперь запустим Chrome под разными пользователями, чтобы сымитировать работу терминального сервера, для этого запустим под обычным пользователем и под пользователем XP (Chrome \ Shift \ ПКМ \ Запустить от имени другого пользователя \ ОК ). Теперь мы видим, что одно и тоже приложение запущено под разными пользователями, повторим команду Taskkill / f / im chrome . exe , чтобы проверить, для всех ли пользователей будет завершен процесс.

Теперь попробуем сделать автоматический перезапуск приложения, в этом нам поможет планировщик задач (Пуск \ Все программы \ Стандартные \ Служебные \ Планировщик заданий \ Библиотека планировщика \ ПКМ \ Создать папку \ Перезапуск Chrome – в зависимости от вашей цели )

Создаем задачу на запуск (Создать новую задачу \ Запуск \ Выполнять с наивысшими правами \ Триггер: по расписанию, ежедневно, начиная с 11:00, повторять каждый час бесконечно, включено \ Действия: запуск программы, chrome \ ОК )

Создадим задачу на завершение процесса (Создать новую задачу \ Завершение \ Выполнять с наивысшими правами \ Триггер: по расписанию, ежедневно, начиная с 10:59:50, повторять каждый час бесконечно, включено \ Действия: запуск программы, Taskkill , дополнительные аргументы: / f / im chrome . exe \ ОК )

Теперь запустим Chrome и подведем часы к более близкому времени, чтобы увидеть, как Хром завершит работу, а потом запустится заново.

Однако, порой требуется запретить только процесс запущенный под определенным пользователем. Именно такая ситуация у меня возникла с обработчиком 1С, который выгружал данные о товарах на сайт.

Дело в том, что, можно каждый час перезапускать зависшую 1С-ку, но, если завершать все процессы 1С, то все удаленные пользователи будут из неё вылетать, а этого нельзя допустить. По этому, нужно завершать процесс, запущенный из под определенной учетной записи.

Для этого в дополнительные аргументы добавим следующую строчку / fi username eq station -4-7” данная команда фильтрует по имени пользователя и завершает процесс только того, чье имя совпадает с указанным в фильтре.

Запустим Chrome под другим пользователем и посмотрим, сработал ли фильтр.

Не справляется с этой задачей.

Иногда возникает необходимость вручную завершить процесс, который не отвечает. В большинстве случаев это можно сделать с помощью Диспетчера задач Windows, однако порой ему не удается справиться с вышедшим из под контроля приложением. Мне часто приходилось сталкиваться с этим при попытке завершить процесс Acronis. В такой ситуации я обычно использую более мощный инструмент - команду taskkill.

Чтобы воспользоваться taskkill, нужно открыть окно командной строки. Для этого вызовите окно «Выполнить» (Run) из меню «Пуск» (Start) или воспользуйтесь клавишной комбинацией +[R] и введите «cmd» (без кавычек) в поле «Открыть» (Open, рис. A).

Рисунок A. Откройте окно командной строки.

Использование команды taskkill

Общий синтаксис команды выглядит следующим образом:

Taskkill [ОПЦИИ] [ИДЕНТИФИКАТОР ПРОЦЕССА]
Разумеется, для taskkill доступен широкий выбор опций. Перечислю лишь наиболее полезные из них:

/s КОМПЬЮТЕР, где КОМПЬЮТЕР - это IP или адрес удаленного компьютера. По умолчанию, операция выполняется в локальной системе. Если именно это вас и интересует, данную опцию можно не использовать.

/u ДОМЕН\ПОЛЬЗОВАТЕЛЬ , где ДОМЕН - это имя домена, а ПОЛЬЗОВАТЕЛЬ - имя пользователя, для которого нужно выполнить команду. Данная опция позволяет запускать taskkill с правами определенной учетной записи или домена.

/p - обязательно используется в сочетании с опцией /u для указания пароля к учетной записи пользователя.

/fi - позволяет выполнять команду taskkill с определенными фильтрами.

/f - принудительно завершает выполнение команды.

/IM - позволяет использовать имя приложения вместо идентификатора процесса.

Ну и разумеется, одна из самых полезных опций - переключатель для вызова справки (рис. В):

Taskkill /?


Рисунок B. Вывод справочной информации по команде taskkill при использовании переключателя справки.

Завершение процесса по имени приложения

Проще всего завершить вышедший из-под контроля процесс, воспользовавшись командой taskkill с использованием опции /IM. Выглядеть это будет так:

Taskkill /IM ИМЯ_ПРИЛОЖЕНИЯ
Здесь ИМЯ_ПРИЛОЖЕНИЯ - это имя процесса, который требуется завершить. К примеру, если Outlook не удается закрыть, можно воспользоваться следующей командой:

Taskkill /IM outlook.exe
Завершение процесса по идентификатора

Если вы не знаете имени процесса, но знаете его идентификатор (PID) - например, 572 - можно воспользоваться следующей командой:

Taskkill /PID 572
Завершение всех процессов для определенной учетной записи

Существует также возможность завершить все процессы для определенной учетной записи. Это особенно актуально, если совершенно точно известно, что проблема связана с определенной учетной записью, или если пользователь уже вышел из системы, а запущенные им процессы перестали отвечать. В таком случае можно воспользоваться следующей командой:

Taskkill /F /FI “USERNAME eq имя_пользователя”
Здесь имя_пользователя - это имя учетной записи, под которой запущены нежелательные процессы. Обязательно нужно включить в команду опцию USERNAME, чтобы указать соответствующее имя пользователя.

Завершение процессов на удаленном компьютере

Еще одна удобная возможность - завершение процессов в удаленном режиме. Допустим, вы точно знаете, что система не отвечает из-за определенного процесса (возьмем для примера все тот же Outlook). В таком случае можно воспользоваться другим компьютером и выполнить следующую команду:

Taskkill /s IP-АДРЕС /u ДОМЕН\ПОЛЬЗОВАТЕЛЬ /IM Outlook.exe
Здесь IP-АДРЕС - адрес удаленного компьютера (можно использовать и имя хоста, если компьютеры способны распознавать друг друга таким способом), ДОМЕН - имя домена (если требуется), а ПОЛЬЗОВАТЕЛЬ - имя пользователя, под которым был осуществлен вход на удаленный компьютер.

В заключение

Команда taskkill - весьма мощный и функциональный инструмент, способный избавить от необходимости принудительной перезагрузки компьютера. Умелое использование этой команды в сочетании с Диспетчером задач продлевает время безотказной работы системы и даже позволяет бороться с вирусами, руткитами или троянцами.

Представьте ситуацию: у вас есть программа, которая настолько нестабильно, что постоянно зависает. Иногда такие программы даже не дают компьютеру перезагрузиться, его работу приходится завершать аварийно - нажатием и долгим удержанием кнопки питания.

Прежде всего, стоит попробовать закрыть программу через стандартный диспетчер задач. Нажмите Alt+Ctrl+Del, во вкладке «Приложения» найдите зависшую программу и нажмите «Снять» задачу.

Если это не помогло, перейдите во вкладку «Процессы», найдите зависший процесс и нажмите «Завершить процесс». В большинстве случаев зависшая программа после этого закроется.

Там, где стандартный диспетчер задач не справляется, поможет более продвинутая программа - Process Explorer. Она выпущена сторонним разработчиком, но распространяется Microsoft, доступна бесплатно, не требует установки и работает на Windows XP, 7 и 8.

Зайдите на сайт Microsoft , скачайте архив Process Explorer, распакуйте его и запустите с правами администратора файл procexp.exe. Вы увидите список всех запущенных программ. Выполняемые ими процессы показаны в древовидной форме. Вполне вероятно, что закрытию проблемной программы диспетчером задач мешало то, что доступ к зависшему процессу блокировал процесс более высокой иерархии. В первом столбике показано, сколько процессорного времени потребляет каждый процесс. У зависшего это значение будет близко к ста процентам. Обнаружить зависшее приложение можно, отсортировав процессы по величине нагрузки на процессор или потребления оперативной памяти.


Чтобы убить зависший процесс, нажмите на него правой кнопкой мыши и выберите опцию Kill Process или нажмите кнопку Del.



Если программа по-прежнему «висит», потребуется убить дерево процессов: выделите его и выберите опцию Kill Process Tree или нажмите сочетание клавиш Shift+Del.